Oracleのデータベースが停止
朝、あるアプリケーションでログインできないとか。いつものことながら「オレ語」で報告されてくるのでなにがなんだかよくわからない。やっとのことでURIとか、現象などを聞き出してどうやらアプリケーションを特定。
現象を追っかけてバックエンド側のOracleDBインスタンスに接続できてないことがわかりました。
DBサーバへ入ってsqlplusで当該インスタンスに接続すると、idleになっている。
SQL> conn system/manager as sysdba ; Connected to an idle instance.
とりあえず再起動してみよう。
SQL> shutdown immediate ; ORA-04031: ???????32????????????("shared pool"?"unknown object"?"KGLH0^ae4fab53"?"kglHeapInitialize:temp") ORA-04031: ???????32????????????("shared pool"?"unknown object"?"KGLH0^592bf3ba"?"kglHeapInitialize:temp")
shutdownが効かない。エラーメッセージによるとどうやらshared_poolが足りないようです。
変更すればいいんだろうけど、管理外のためとりあえずforce startして様子見。
SQL> startup force
マニュアルによると「通常は使用しないでください」とのこと。実際Oracle管理して20年ほど経つけど多分初めてつかった。