プログラミング逆引き辞典

~ 多言語対応のプログラミングレシピ ~

Oracle プラガブル・データベース(PDB)に接続し直す方法

ORA-01033がでてOracleに接続できないの対処法

 
「Oracleの初期化またはシャットダウン中です」と表示された場合は下記方法で解決可能
 
■ORACLEでプラガブル・データベース(PDB)に接続し直す方法を解説する
 
 


1.コマンドプロンプトを起動して、Oracleに接続

sqlplus system/password as sysdba

 
 


2.show con_nameコマンドで、接続先のコンテナ名を確認します。CDB$ROOTとなっていた場合、CDBに接続している

show con_name;

 
 


3.以下のクエリを実行し、PDBの名前とopen_modeがREAD WRITEとなっているかを確認

select name, open_mode from v$pdbs;
-- もしくは --
show pdbs;

 
※PDBのopen_modeがREAD WRITEになっていない場合は、以下のコマンドでPDBをオープン

alter pluggable database pdbの名前 open;
-- もしくは --
alter pluggable database all open;

 
 


4.alter sessionコマンドで接続先コンテナを変更

alter session set container = pdb名;

alter session set container = orclpdb;

 
 


5.show con_nameコマンドで、接続先のコンテナ名を確認します。データベース作成時に指定したPDB名と同じ名前が表示されれば、OK

show con_name;

 
 


補足

ただし、このままだと時間が経過してからSQLPlusに接続すると再びCDBに接続されてしまう
最初からPDBに接続したい場合は上記の「3」までを実行後に設定を保存しておけばよい
 
 

■設定の保存

alter pluggable database all save state;