oracle服务器一般来说***是手动启动,这样碰到问题的话,可以现场解决,但是也担心有时候机器故障,自动重启后,为了快速恢复应用,需要自动开机启动oracle,而且发现在不同的os下,启动的设置都不太一样
1,centos操作系统下,可以这样设置
直接在rc.local里面添加
- <code class="hljs cs">[root@localhost ~]# vim /etc/rc.local
- touch /var/lock/subsys/local
- su - oracle < lsnrctl start
- sqlplus / as sysdba
- startup
- quit
- EOF
- su - oracle < export ORACLE_SID=pddev1
- sqlplus / as sysdba
- startup
- quit
- EOF</code>
重启后生效,PS:但是在redhat系统下失效
2,redhat操作系统下面,用dbstart的方式
2.1,测试
- <code class="hljs cs">[oracle@localhost ~]$ /oracle/app/oracle/product/11.2.0/dbhome_1/bin/dbstart
- ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener
- Usage: /oracle/app/oracle/product/11.2.0/dbhome_1/bin/dbstart ORACLE_HOME
- [oracle@localhost ~]$
- </code>
有报错信息,提示ORACLE_HOME不识别,如下解决方案,修改dbstart和dbstut,有的版本dbstut找不到不存在,可以忽略。
vim /oracle/app/oracle/product/11.2.0/dbhome_1/bin/dbstart
vim /oracle/app/oracle/product/11.2.0/dbhome_1/bin/dbstut
将
ORACLE_HOME_LISTNER =$1
改成
ORACLE_HOME_LISTNER=$ORACLE_HOME
2.2,[root@localhost ~]# vim /etc/oratab
powerdes:/oracle/app/oracle/product/11.2.0/dbhome_1:Y
2.3 在rc.local里面设置开机自启动
- <code class="hljs cs"><code class="hljs bash">[root@localhost bin]# vim /etc/rc.local
- #!/bin/sh
- #
- # This script will be executed *after* all the other init scripts.
- # You can put your own initialization stuff in here if you don't
- # want to do the full Sys V style init stuff.
- touch /var/lock/subsys/local
- su - oracle -lc "/oracle/app/oracle/product/11.2.0/dbhome_1/bin/lsnrctl start"
- su - oracle -c "/oracle/app/oracle/product/11.2.0/dbhome_1/bin/dbstart"</code></code>
db服务器重启生效。