OL9设置oracle23ai数据库开机自启动

news2025/4/15 8:32:53

1、设置oracle用户的环境变量信息

[oracle@OracleLinuxR9U5 ~]$vim ~/.bash_profile

# Set Oracle environment variables for Oracle 23c AI
export ORACLE_HOME=/opt/oracle/product/23ai/dbhomeFree
export ORACLE_SID=FREE
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS_LANG=SIMPLIFIED_CHINESE_CHINA.AL32UTF8

2. 创建 systemd 服务文件

为 Oracle 数据库和监听器分别创建 systemd 服务文件。

2.1 数据库服务文件

创建文件 /etc/systemd/system/oracle-db.service:

[root@OracleLinuxR9U5 dbhomeFree]# touch /etc/systemd/system/oracle-db.service
[root@OracleLinuxR9U5 dbhomeFree]# vim /etc/systemd/system/oracle-db.service
[Unit]
Description=Oracle Database 23c AI Instance
After=network.target

[Service]
Type=forking
User=oracle
Group=oinstall
Environment="ORACLE_HOME=/opt/oracle/product/23ai/dbhomeFree"
Environment="ORACLE_SID=FREE"
ExecStart=/opt/oracle/product/23ai/dbhomeFree/bin/dbstart $ORACLE_HOME
ExecStop=/opt/oracle/product/23ai/dbhomeFree/bin/dbshut $ORACLE_HOME
TimeoutSec=300
Restart=on-failure

[Install]
WantedBy=multi-user.target

2.2 监听器服务文件

创建文件 /etc/systemd/system/oracle-lsnrctl.service:

[root@OracleLinuxR9U5 dbhomeFree]# touch /etc/systemd/system/oracle-lsnrctl.service
[root@OracleLinuxR9U5 dbhomeFree]# vim /etc/systemd/system/oracle-lsnrctl.service
[Unit]
Description=Oracle Listener Control
After=network.target

[Service]
Type=forking
User=oracle
Group=oinstall
Environment="ORACLE_HOME=/opt/oracle/product/23ai/dbhomeFree"
ExecStart=/opt/oracle/product/23ai/dbhomeFree/bin/lsnrctl start
ExecStop=/opt/oracle/product/23ai/dbhomeFree/bin/lsnrctl stop
TimeoutSec=300
Restart=on-failure

[Install]
WantedBy=multi-user.target

3. 修改 dbstart 和 dbshut 脚本

确保 dbstart 和 dbshut 脚本能够正确识别 ORACLE_HOME 和 ORACLE_SID。通常不需要修改,但可以检查以下内容:
在 $ORACLE_HOME/bin/dbstart 和 $ORACLE_HOME/bin/dbshut 中,确保没有硬编码的 ORACLE_HOME 或 ORACLE_SID。
确保 /etc/oratab 文件中包含正确的实例信息,例如:

[root@OracleLinuxR9U5 ~]#vim  /etc/oratab 
FREE:/opt/oracle/product/23ai/dbhomeFree:Y

4. 重新加载 systemd 配置

执行以下命令重新加载 systemd 配置并启用服务:
[root@OracleLinuxR9U5 ~]#sudo systemctl daemon-reload
[root@OracleLinuxR9U5 ~]#sudo systemctl enable oracle-db.service
[root@OracleLinuxR9U5 ~]#sudo systemctl enable oracle-lsnrctl.service

5. 测试服务

启动并检查服务状态:

[root@OracleLinuxR9U5 ~]#sudo systemctl start oracle-db.service
[root@OracleLinuxR9U5 ~]#sudo systemctl start oracle-lsnrctl.service
 
[root@OracleLinuxR9U5 ~]#sudo systemctl status oracle-db.service
[root@OracleLinuxR9U5 ~]#sudo systemctl status oracle-lsnrctl.service


[root@OracleLinuxR9U5 ~]#sudo systemctl stop oracle-db.service
[root@OracleLinuxR9U5 ~]#sudo systemctl stop oracle-lsnrctl.service

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2334330.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【操作系统学习篇-Linux】进程

1. 什么是进程 课本概念:程序的一个执行实例,正在执行的程序等 内核观点:担当分配系统资源(CPU时间,内存)的实体。 如果你就看这个来理解进程,那么恭喜你,作为初学者,你…

CF985G Team Players

我敢赌,就算你知道怎么做,也必然得调试半天才能 AC。 [Problem Discription] \color{blue}{\texttt{[Problem Discription]}} [Problem Discription] 图片来自洛谷。 [Analysis] \color{blue}{\texttt{[Analysis]}} [Analysis] 显然不可能正面计算。所以…

企业经营决策风险

在企业的经营过程中,领导者每天都在面对大量的决策——该扩大生产还是收缩业务?该增设销售渠道还是提升产品质量?但你知道吗,企业最大的成本,不是生产成本,也不是人工成本,而是决策错误的成本&a…

UE5蓝图实现打开和关闭界面、退出

Button_Back 和Button_Exit是创建的两个按钮事件。 1.Create Widget 创建界面(打开界面) 2.Add to Viewport 添加到视图 3.remove form Parent,Target:self 从父节点移除当前界面(关闭界面) 4.Quit Game 退…

JavaWeb 课堂笔记 —— 09 MySQL 概述 + DDL

本系列为笔者学习JavaWeb的课堂笔记,视频资源为B站黑马程序员出品的《黑马程序员JavaWeb开发教程,实现javaweb企业开发全流程(涵盖SpringMyBatisSpringMVCSpringBoot等)》,章节分布参考视频教程,为同样学习…

echarts 图表

echart快速上手 快速上手 - 使用手册 - Apache EChartshttps://echarts.apache.org/handbook/zh/get-started/

无线通信网

1.2.4G相邻信道间有干扰,5G相邻信道几乎无干扰 2.2.4G频段的优点是信号强,衰减小,穿墙强,覆盖距离远;缺点是带宽较窄,速度较慢,干扰较大。 5G频段的优点是带宽较宽,速度较快&#…

数据结构:哈希表 | C++中的set与map

上回说到,红黑树是提升了动态数据集中频繁插入或删除操作的性能。而哈希表(Hash Table),则是解决了传统数组或链表查找数据必须要遍历的缺点。 哈希表 哈希表的特点就是能够让数据通过哈希函数存到表中,哈希函数能够将数据处理为表中位置的索…

容器初始化Spring Boot项目原理,即web项目(war)包涉及相关类对比详解

以下是关于 SpringBootServletInitializer、ServletContainerInitializer、SpringServletContainerInitializer、WebApplicationInitializer 和 ServletInitializer 的对比详解及总结表格: 1. 核心对比详解 (1) SpringBootServletInitializer 作用: S…

[ctfshow web入门] web29

前置知识 eval: 把字符串按照 PHP 代码来执行,例如eval(“echo 1;”);这个函数拥有回显 system:使php程序执行系统命令,例如,system(“ls”);就是查看当前目录,这个拥有回显 preg_match:查找字符串是否匹配…

5.JVM-G1垃圾回收器

一、什么是G1 二、G1的三种垃圾回收方式 region默认2048 三、YGC的过程(Step1) 3.1相关代码 public class YGC1 {/*-Xmx128M -XX:UseG1GC -XX:PrintGCTimeStamps -XX:PrintGCDetails -XX:UnlockExperimentalVMOptions -XX:G1LogLevelfinest128m5% 60%6.4M 75M*/private stati…

Odrive0.5.1-FOC电机控制 arm_cos_f32.cpp arm_sin_f32.cpp代码实现(一)

01 查表法 在 our_arm_cos_f32 函数中,查表(Look-Up Table, LUT) 的核心是 预计算的正弦值表 sinTable_f32,通过巧妙利用余弦与正弦的相位关系实现快速余弦计算。以下是详细解析: 1. 查的是什么表? (1) 表内…

机械臂只有位置信息是否可以进行手眼标定?

平常我在做手眼标定时,一般都是通过OpenCV的cv::calibrateHandEye函数进行求解,需要输入多组不同的机械臂位姿。今天遇到了一款舵机机器人,只能获取位置,得不到姿态信息,想着那就把姿态都设为0,结果求不出来…

Python 数据分析01 环境搭建教程

Python 数据分析01 环境搭建教程 一、安装 Python 环境 访问 Python 官方网站 Python 官网,选择适合你操作系统的 Python 版本进行下载。下载完成后,运行安装程序。在安装过程中,建议选择“Add Python to PATH”选项,这样可以在…

使用 Visual Studio 2022 (VS2022) 编译 FreeCAD 1.0.0 的详细教程

一、环境准备 官方教程:在 Windows 上编译 - FreeCAD Documentation Windows 10/11(推荐) git vs2022 cmake 3.26.4 Doxygen1.12 二、获取源码与依赖 版本关系 打开Git Bash或CMD,执行以下命令 git clone --recurse-sub…

蓝桥杯单片机频率

long int Freq; unsigned int Timer_1000Ms; 加上 TMOD | 0x05; void Timer0Init(void) //0毫秒12.000MHz {AUXR & 0x7F; //定时器时钟12T模式TMOD & 0xF0; //设置定时器模式TMOD | 0x05;TL0 0x00; //设置定时初值TH0 0x00; //设置定时初值TF0 0; //清除TF0标…

遵循IEC 62304:构建安全可靠的医疗器械软件

目录 一、IEC 62304 标准概述 1. 标准定位与适用范围 二、核心内容与要求 1. 软件安全等级(Software Safety Classification) (1)分级标准 (2)分级依据 (3)验证要求 2. 软件…

互联网三高-数据库高并发之分库分表

1 数据库概述 1.1 数据库本身的瓶颈 ① 连接数 MySQL默认最大连接数为100,允许的最大连接数为16384 ② 单表海量数据查询性能 单表最好500w左右,最大警戒线800w ③ 单数据库并发压力问题 MySQL QPS:1500左右/秒 ④ 系统磁盘IO、CPU瓶颈 1.2 数…

UE5 在UE中创建骨骼动画

文章目录 创建动画的三种方式修改骨骼动画 创建动画的三种方式 方法一 打开一个已有的动画,左上角“创建资产/创建动画/参考姿势” 这将创建一个默认的A字形的骨骼,不建议这么做 方法二 打开一个已有的动画,左上角“创建资产/创建动画/当前…

[ctfshow web入门] web38

信息收集 过滤多了php和file if(isset($_GET[c])){$c $_GET[c];if(!preg_match("/flag|php|file/i", $c)){include($c);echo $flag;}}else{highlight_file(__FILE__); }解题 更多解法参考 [ctfshow web入门] web37 我们选个最简单的。但是因为php被过滤了我们改用…