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

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

oracle@OracleLinuxR9U5 \~\]$vim \~/.bash_profile ```bash # 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: ```bash [root@OracleLinuxR9U5 dbhomeFree]# touch /etc/systemd/system/oracle-db.service [root@OracleLinuxR9U5 dbhomeFree]# vim /etc/systemd/system/oracle-db.service ``` ```bash [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: ```bash [root@OracleLinuxR9U5 dbhomeFree]# touch /etc/systemd/system/oracle-lsnrctl.service [root@OracleLinuxR9U5 dbhomeFree]# vim /etc/systemd/system/oracle-lsnrctl.service ``` ```bash [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 文件中包含正确的实例信息,例如: ```bash [root@OracleLinuxR9U5 ~]#vim /etc/oratab ``` ```bash FREE:/opt/oracle/product/23ai/dbhomeFree:Y ``` ### 4. 重新加载 systemd 配置 ```bash 执行以下命令重新加载 systemd 配置并启用服务: [root@OracleLinuxR9U5 ~]#sudo systemctl daemon-reload [root@OracleLinuxR9U5 ~]#sudo systemctl enable oracle-db.service [root@OracleLinuxR9U5 ~]#sudo systemctl enable oracle-lsnrctl.service ``` ### 5. 测试服务 启动并检查服务状态: ```bash [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 ```

相关推荐
Mr_Xuhhh1 小时前
MySQL核心知识梳理:从连接到查询的完整指南
数据库·sql·mysql
wsxlgg1 小时前
MySQL中count(*)、count(1)、count(字段)的区别
数据库·mysql
pengdott7 小时前
Oracle RAC内存融合技术深度解析:集群性能的幕后引擎
数据库·oracle
csudata8 小时前
绿色便携版PostgreSQL发行版重磅发布
数据库·postgresql
阳光九叶草LXGZXJ8 小时前
达梦数据库-学习-48-DmDrs控制台命令(同步之Manager、CPT模块)
linux·运维·数据库·sql·学习
我科绝伦(Huanhuan Zhou)9 小时前
脚本再升级,兼容Oracle 26ai一键安装
数据库·oracle
野生绿箭侠9 小时前
Ncos 2.3.2 版本集成达梦数据库
数据库
仍然.10 小时前
MYSQL--约束
数据库·mysql
乡野码圣10 小时前
【RK3588 Android12】RCU机制
java·jvm·数据库
亓才孓11 小时前
[数据库]应该注意的细节
数据库·sql