oracle服務器一般來說最好是手動啟動,這樣碰到問題的話,可以現場解決,但是也擔心有時候機器故障,自動重啟後,為了快速恢復應用,需要自動開機啟動oracle,而且發現在不同的os下,啟動的設置都不太一樣
直接在rc.local裡面添加
[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
重啟後生效,PS:但是在redhat系統下失效
2,redhat操作系統下面,用dbstart的方式
2.1,測試
[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 ~]$
有報錯信息,提示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裡面設置開機自啟動
[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"
db服務器重啟生效。