Linux下Oracle开机自动重启的设置方法 (linux 开机重启oracle)
Linux系统中,Oracle是一款常用的数据库软件,使用者常常需要对其进行监控和维护。在这个过程中,遇到Oracle应用程序崩溃或系统故障导致Oracle进程被终止的情况也是常见的。为了避免这些情况的出现,很多人都会选择在开机时自动重启Oracle进程。那么在Linux中如何设置Oracle开机自动重启呢?本文将一一介绍解决方法。
一、检测Oracle是否已经在auto-start组中
在Linux中设置Oracle开机自动重启的前提是Oracle服务已经在auto-start组中了。我们可以通过以下命令来查看:
# chkconfig –list |grep oracledb
如果显示了Oracle服务,而且在服务后面的数字是2、3、4、5,则说明Oracle已经在auto-start组中,系统可以自动重启了。
二、在Oracle安装目录下创建脚本文件
如果Oracle没有在auto-start组中,我们需要在系统自动启动脚本中加入Oracle服务,让系统能够自动重启Oracle。具体步骤如下:
1.在Oracle安装目录下创建自动启动脚本文件:
# vi /etc/init.d/oracle
2.将以下命令添加到文件中:
#!/bin/bash
# Get function from functions library
. /etc/init.d/functions
# Start the Oracle Database Listener services
ORA_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
ORA_OWNR=oracle
if [ ! -f $ORA_HOME/bin/dbstart ]
then
echo “Oracle startup: cannot start”
exit 1
fi
case “$1” in
‘start’)
# Start the Oracle databases:
# The following command assumes that the oracle login
# will not prompt the user for any values
su $ORA_OWNR -c “$ORA_HOME/bin/lsnrctl start”
su $ORA_OWNR -c $ORA_HOME/bin/dbstart
;;
‘stop’)
# Stop the Oracle databases:
# The following command assumes that the oracle login
# will not prompt the user for any values
su $ORA_OWNR -c “$ORA_HOME/bin/lsnrctl stop”
su $ORA_OWNR -c $ORA_HOME/bin/dbshut
;;
*)
echo “usage: $0 {start|stop}”
;;
esac
exit 0
3.保存退出后,执行以下命令:
# chmod +x /etc/init.d/oracle
4.测试该脚本是否能够成功启动和停止Oracle服务:
# /etc/init.d/oracle start # /etc/init.d/oracle stop
三、将Oracle服务加入开机自动启动列表
1.执行以下命令将Oracle加入开机自动启动列表:
# chkconfig –add oracle
2.执行以下命令可以查看Oracle何时启动:
# chkconfig –level 345 oracle on
四、验证Oracle开机自动重启是否成功
现在我们需要测试是否成功地将Oracle加入了自动重启组。重启Linux系统之后,使用以下命令检查Oracle服务是否自动启动:
# ps -ef | grep pmon
注意:如果上述命令没有运行结果返回,则说明Oracle没有在开机时自动启动。需要检查之前的操作是否正确,并重新调整操作。
经过以上四个步骤,我们就可以在Linux系统中设置Oracle开机自动重启了。这样就可以避免由于系统故障或Oracle应用程序崩溃而导致Oracle进程中断的情况。在大型生产环境中,这个设置将具有重要的实际应用价值。