CentOS 5.2 にて、自動起動スクリプトを書いてみました。
※ 参考 10gの起動スクリプト
リスナーとインスタンスを起動するようになっています。 ASM や OCFS についてはまだ考慮していません。
まず /etc/oratab にて、自動起動対応のために行の末尾を N から Y にします。
#pre{{ orcl:/u01/app/oracle/product/11.1.0/db_1:Y }}
スクリプトは oracle を /etc/init.d/oracle として置き、 実行権限を与えておきます。
自動起動のため、chkconfig にて設定します。
#pre{{
# chkconfig --add oracle
# chkconfig oracle on
# chkconfig --list oracle oracle 0:off 1:off 2:on 3:on 4:on 5:on 6:off }}
あとは service コマンドで起動や終了ができます。 直接 /etc/init.d/oracle を叩いても同じです。
#pre{{ [root@ora1 ~]# /etc/init.d/oracle start Oracle 11g を起動中: [ OK ] [root@ora1 ~]# /etc/init.d/oracle stop Oracle 11g を停止中: [ OK ]
}}
Oracle の起動や終了には結構な時間が掛かりますので、 根気強く待ちましょう。
10g のものと違って、このスクリプトの中ではリスナーの起動や終了を明示的に書いていません。 dbstart/dbshut の引数に $ORACLE_HOME を渡すことで、これらのスクリプトの中でやってくれるようになりました。