• ベストアンサー

Oracleの起動時に、マウントしたりしなかったりで困っています。

初めまして。Oracleの知識が薄く困っております。 よろしくお願い致します。 さて、現象ですがPC起動と同時にOracleが起動するように設定しているのですが、 マウントまで行ったり行かなかったりで困っております。 (起動する度に現象が異なります) Ver:ORACLE V10.1.0.2.0 OS :WindosXP SP2 アラートログを確認しますと、 XXXX started with pid=Y(XXXX=SMONだったりRECOだったり・・・) の直後に、 alter database mount exclusive のコマンドが続く場合は、うまく立ち上がるようです。 しかし、 XXXX started with pid=Y の後に何もない時はマウントできていないようです。 また、 (1) > sqlplus /nolog (2) SQL> connect sys/aaaa@bbbb as sysdba (3) SQL> select status from v$instance; とすると、「STARTED」状態であり、 SQL> alter database mount; SQL> alter database open; とすると、正常に動作するようになります。 oradim.logを確認すると、  ORA-01012: not logged on  ORA-24324: service handle not initialized が出ていますが、どこから調査をすればいいのか暗闇の中です。 お助言頂きますようお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

なんとなく、ORACLE_SIDの環境変数の設定あたりが怪しそうな 気がしますが・・・ 障害に対する情報ではないのですが、参考として。 Windowsプラットフォームの場合、データベースの起動は バッチ処理で起動するようにします。 サービス起動時にDBインスタンスも起動する設定をしないようにし (1)ORACLE_SID環境変数の設定 (2)サービスの起動(net startコマンド) (3)sqlplusでstartupの実行 (4)listenerの起動(lsnrctlコマンド) を実行するバッチをグループポリシーのスタートアップスクリプト などに登録します。 バッチの結果をリダイレクトしておけば、エラーになったときも 確認取れますし。 終了もサービスに頼らずにシャットダウンするバッチを作成し グループポリシーのシャットダウンスクリプトに登録します。

masajun884
質問者

お礼

ご助言ありがとうございます。 バッチ起動の方がいいんでしょうか。 一度実験してみます。 また、シャットダウンもバッチからという点も参考になりました。

その他の回答 (1)

  • ishi7474
  • ベストアンサー率32% (71/216)
回答No.1

状況がよく分かっていないのですが、UNIX系OSではOracleの自動起動と 自動停止の設定手順が酷似しておりますので、自動起動を設定している 人は忘れずに自動停止も設定しています。 ところがWindowsは自動起動の設定手順と自動停止の設定手順が大きく 異なっているので、自動起動の設定だけで自動停止も設定したと思い 込む人が結構います。自動停止を正しく設定したか、確認されては いかがでしょうか。

masajun884
質問者

お礼

ご助言ありがとうございました。 自動停止の件、失念しております。 (というか、しなければいけないと考えておりませんでした) 起動/停止をバッチから試してみようと思います。 停止も重要な点、非常に参考になりました。

関連するQ&A