Linux下oracle服务开机自动启动

时间:2021-10-10 08:36:24

 

一、配置/etc/oratab(root用户)

 

修改为Y

vi /etc/oratab

gkjr:/u01/app/oracle/product/11.2.0/dbhome_1:Y

设置为Y时,允许实例自启动,当设置为N时,则不允许自启动。 

这个文件里的配置仅仅起一个开关的作用,其并不会具体的执行启动和关闭,具体的操作由$ORACLE_HOME/bin/dbstartdbshut脚本来实现。2个脚本在执行时会检查/etc/oratab文件里的配置,为Y时才能继续执行。

 

、将lsnrctl start和dbstart添加到rc.local文件中(root用户)

vi /etc/rc.d/rc.local

su oracle -lc "/u01/app/oracle/product/11.2.0/dbhome_1/bin/lsnrctlstart"

su oracle -lc  /u01/app/oracle/product/11.2.0/dbhome_1/bin/dbstart

 

三、设置ORACLE_HOME_LISTNER(oracle用户)

修改 /u01/app/oracle/product/11.2.0/dbhome_1/bin目录下的dbstartdbshut文件

ORACLE_HOME_LISTNER=$1行注释掉,将ORACLE_HOME_LISTNER设置到环境变量中:

修改/home/oracle/.bash_profile

添加export ORACLE_HOME_LISTNER=$ORACLE_HOME一句

生效变量:

[root@oracle01 ~]# source/home/oracle/.bash_profile

否则执行脚本的时候会报错:

ORACLE_HOME_LISTNER is not SET, unable toauto-start Oracle Net Listener
Usage:/u01/app/oracle/oracle/product/10.2.0/db_1/bin/dbstart ORACLE_HOME

 

四、设置文件的权限(root用户)

执行脚本后会在bin目录下生成文件startup.logshutdown.loglistener.log

但是会报没有权限的错,将文件的权限给oracle用户

cannot touch`/u01/app/oracle/product/11.2.0/dbhome_1/startup.log': Permission denied

#cd $ORACLE_HOME

#chown  oracle:oinstall$ORACLE_HOME/startup.log

#chown oracle:oinstall $ORACLE_HOME/shutdown.log

#chown oracle:oinstall $ORACLE_HOME/listener.log

 

五、reboot重启测试