28.4.2 开机自动启动Oracle数据库服务
Oracle提供了3个文件,用于配置Oracle数据库服务的自动启动,它们分别是/etc/oratab、$ORACLE_HOME/bin/dbstart以及$ORACLE_HOME/bin/dbshut。关于这3个文件的说明如下所示。
q /etc/oratab:在该文件中指定需要自动启动和关闭的数据库。
q $ORACLE_HOME/bin/dbstart:读取oratab文件中的内容,启动相应的数据库并启动网络监听程序。
q $ORACLE_HOME/bin/dbshut:读取oratab文件中的内容,关闭相应的数据库并关闭网络监听程序。
具体配置步骤如下所述。
(1)编辑oratab文件。该文件保存了系统中所有已创建的数据库的信息,每个数据库对应一行记录,以#号开头的是注释行。例如orcl数据库的对应记录如下所示。
orcl:/u01/app/oracle/product/11.1.0/db_1:N
如果要设置orcl数据库在开机时自动启动,把该记录最后的N改为Y,更改后的结果如下所示。
orcl:/u01/app/oracle/product/11.1.0/db_1:Y
(2)在/etc/init.d目录下创建文件oracle,加入如下内容:
#!/bin/sh
# chkconfig: 345 90 10
# description: Oracle auto start-stop script.
#
ORA_HOME=/u01/app/oracle/product/11.1.0/db_1
# 使用ORA_HOME变量设置Oracle主目录的位置
ORA_OWNER=oracle # 使用ORA_OWNER变量设置Oracle用户
# 如果dbstart脚本文件不存在,则返回错误信息
if [ ! -f $ORA_HOME/bin/dbstart ]
then
echo "Oracle startup: cannot start"# 输出Oracle无法启动的错误
exit
fi
case "$1" in
'start') # 如果参数为start
# 执行dbstart脚本启动Oracle数据库
su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart $ORA_HOME"
;;
'stop') &n