CDB構成のデータベースは、初期状態ではデータベースを起動(CDBを起動)しても
PDB(プラガブルデータベース)は自動的に起動しません。
PDBが自動で起動されるようにするには、
PDBを起動した状態で以下コマンドの実行が必要です。
構文
- (PDBの状態を保存する構文)
- ALTER PLUGGABLE DATABASE {ALL | PDB名} SAVE STATE;
ALLを指定すると全てのPDBの状態が保存されます。
サンプル
例)PDB「mydb」を自動起動に設定する
- 実行例
- ① 対象PDBの状態が「READ WRITE」になっていることを確認する SQL> show pdbs CON_ID CON_NAME OPEN_MODE RESTRICTED ------ --------- ---------- -------------- 2 PDB$SEED READ ONLY NO 3 XEPDB1 READ WRITE NO 4 MYDB READ WRITE NO ② PDB「mydb」の現在の状態(READ WRITE状態)を保存する SQL> alter pluggable database mydb save state; プラガブル・データベースが変更されました。
これで、データベースを起動したと同時に、PDB「mydb」も起動されるようになります。
解説
- ALTER PLUGGABLE DATABASE ~ SAVE STATE; コマンドは、厳密には現在の状態を保存するコマンドです。
- 起動した状態で当コマンドを実行することで起動状態が保存されて結果、DB起動時にPDBも起動されるという動きになります。
- 起動時の状態を元に戻したい場合は、
「alter pluggable database PDB名 discard state;」で元に戻せます。
※これを実行すると、データベース起動時に対象PDBはMOUNT状態になります。