Oracle DBがWindowsの再起動時に自動で立ち上がらなくなった場合
Oracle DBをサービスとして登録してあり自動で起動するように設定されていて、TNSリスナーは自動で立ち上がるのにOracle DBに接続できない場合があります。 データベースを再作成した時にそうなることがあるのですが、そちらについての確認方法と対処方法を記入します。
今回のケースでは、DBにDBA権限で接続したときにマウント及びオープンされていないので、とりあえず、以下のコマンドを入力することでDBに接続できるようになります。
C:\Users\oracle>sqlplus /nolog SQL*Plus: Release 11.2.0.2.0 Production on 水 12月 4 13:49:43 2019 Copyright (c) 1982, 2014, Oracle. All rights reserved. //sysdba権限でログイン SQL> CONN / AS SYSDBA アイドル・インスタンスに接続しました。 //DBの起動 SQL> STARTUP ORACLEインスタンスが起動しました。 Total System Global Area ********* bytes Fixed Size ********** bytes Variable Size ********** bytes Database Buffers ********** bytes Redo Buffers *********** bytes データベースがマウントされました。 データベースがオープンされました。
Oracle DBを使用するためにはサービスとして起動するほかに、マウント、オープンを行う必要があります。 マウント、オープンする設定がレジストリにあるのですが、オフになっているもしくは不整合が発生している可能性があります。
regeditを管理者権限で開いて、以下のキーを参照してください。 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_[HomeName]
以下のような観点で確認してください。
- ORA[ServiceName]AUTOSTARTがtrueになっているか
- 初期化パラメーターファイル等の設定ファイルの場所があっているか
詳細はレジストリ・パラメータの概要に。
コマンドからだとoradimコマンドで修正もできます。 詳細はORADIMを使用したOracle Databaseインスタンスの管理についてに。
教えていただいた @takashitel さんありがとうございました。