Linux平台Oracle开机自启动设置

简介: 【11月更文挑战第8天】在 Linux 平台设置 Oracle 开机自启动有多种方法,本文以 CentOS 为例,介绍了两种常见方法:使用 `rc.local` 文件(较简单但不推荐用于生产环境)和使用 `systemd` 服务(推荐)。具体步骤包括编写启动脚本、赋予执行权限、配置 `rc.local` 或创建 `systemd` 服务单元文件,并设置开机自启动。通过 `systemd` 方式可以更好地与系统启动过程集成,更规范和可靠。

在 Linux 平台设置 Oracle 开机自启动主要有以下几种方法,以下以 CentOS 为例进行介绍:


一、使用 rc.local 文件(较简单但不太推荐用于生产环境)


  1. 编写启动脚本
  • 首先,创建一个用于启动 Oracle 服务的脚本文件,例如/etc/init.d/oracle_start.sh。在脚本中添加以下内容:


#!/bin/bash
# 设置Oracle环境变量
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin
# 启动监听器
lsnrctl start
# 启动数据库实例
sqlplus / as sysdba <<EOF
startup;
EOF


  • 注意:需要将ORACLE_HOMEORACLE_SID替换为你实际的 Oracle 安装目录和实例名。


  1. 赋予脚本执行权限
  • 运行以下命令赋予脚本执行权限:


chmod +x /etc/init.d/oracle_start.sh


  1. 在 rc.local 中添加启动项
  • 编辑/etc/rc.local文件,在exit 0之前添加以下内容:


/etc/init.d/oracle_start.sh


  • 这种方法的缺点是rc.local文件在系统启动过程中较晚执行,并且可能会受到其他因素的干扰。如果rc.local文件本身出现问题,可能会导致系统启动问题。


二、使用 systemd 服务(推荐)


  1. 创建 systemd 服务单元文件
  • 创建一个名为oracle.service的文件,例如放在/usr/lib/systemd/system/目录下。文件内容如下:


[Unit]
Description=Oracle Database Service
After=network.target
[Service]
User=oracle
Group=oinstall
EnvironmentFile=-/etc/sysconfig/oracle
ExecStart=/u01/app/oracle/product/11.2.0/dbhome_1/bin/dbstart $ORACLE_HOME
ExecStop=/u01/app/oracle/product/11.2.0/dbhome_1/bin/dbshut $ORACLE_HOME
Restart=always
[Install]
WantedBy=multi - user.target


  • 同样需要将ORACLE_HOME和相关用户、组信息替换为实际的内容。EnvironmentFile=-/etc/sysconfig/oracle这一行表示从/etc/sysconfig/oracle文件中读取环境变量,如果文件不存在也不会报错。


  1. 创建环境变量文件(可选)
  • 如果在服务单元文件中指定了EnvironmentFile,可以创建/etc/sysconfig/oracle文件,内容如下:


export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin


  • 根据实际情况修改环境变量的值。


  1. 重新加载 systemd 配置并设置开机自启动
  • 运行以下命令来重新加载 systemd 配置:


systemctl daemon - reload


  • 然后设置 Oracle 服务开机自启动:


systemctl enable oracle.service


  • 可以使用systemctl start oracle.service来手动启动服务,systemctl status oracle.service来查看服务状态。


通过 systemd 服务的方式设置 Oracle 开机自启动更加规范和可靠,它可以更好地与系统的启动过程集成,并且方便管理和监控服务的状态。

相关文章
|
27天前
|
Oracle Cloud Native 关系型数据库
Oracle Linux 9.5 正式版发布 - Oracle 提供支持 RHEL 兼容发行版
Oracle Linux 9.5 正式版发布 - Oracle 提供支持 RHEL 兼容发行版
60 10
Oracle Linux 9.5 正式版发布 - Oracle 提供支持 RHEL 兼容发行版
|
1月前
|
Oracle Ubuntu 关系型数据库
Linux平台Oracle开机自启动设置
【11月更文挑战第7天】本文介绍了 Linux 系统中服务管理机制,并详细说明了如何在使用 systemd 和 System V 的系统上设置 Oracle 数据库的开机自启动。包括创建服务单元文件、编辑启动脚本、设置开机自启动和启动服务的具体步骤。最后建议重启系统验证设置是否成功。
|
Oracle 关系型数据库 Linux
|
Oracle 关系型数据库 Linux
|
存储 监控 关系型数据库
Oracle Linux 6.3下安装Oracle 11g R2(11.2.0.3)
    本文主要描述了在Oracle Linux 6.3下安装Oracle 11gR2(11.2.0.3)。从Oracle 11g开始,Oracle官方网站不再提供其Patch的下载链接,需要使用Meatlink账户才可以进行下载。
1551 0
|
Oracle 关系型数据库 Linux
【转】一步一步在Linux上安装 Oracle11g R2 RAC
文章转自:http://www.oracleonlinux.cn/category/oracle/rac/ 安装操作文档下载,便于自己日后温习 一步一步在Linux上安装 Oracle 11g R2 RAC(1).
2675 0