Oracle:接続時に「ORA-01109:データベースがオープンされていません。」エラーが出た場合の原因と対応方法

DBクライアントソフトなどでOracle DBへ接続時に「ORA-01109:データベースがオープンされていません。」が表示された場合の原因と対応方法についてメモしておきます。

「ORA-01109:データベースがオープンされていません。」の原因

  • 文字通り接続しようとしているDBがオープンされていないのが原因となります。今回接続先を「ORCLPDB」に指定していましたがそこがオープンされていないようです。
  • 念のためSQL Plusを起動して「show pdbs」コマンドでプラガブル・データベース(PDB)のオープン状態を確認するとやはりオープンされていませんでした。

「ORA-01109:データベースがオープンされていません。」の対処方法

  1. SQL Plusで「alter pluggable database ORCLPDB open;」コマンドを実行し、ORCLPDBをオープンします。
  2. 「show pdbs」コマンドでプラガブル・データベース(PDB)のオープン状態を確認します。
  3. これでORCLPDBのオープンだけなら完了していますが、このままPCを再起動するとまた再びクローズ状態に戻ってしまいます。ですので最後に現在オープンされている全てのPDBを自動起動(オープン)するように「alter pluggable database all save state;」コマンドで保存します。