Database

Oracle12cのPDBを自動起動にする方法

スポンサーリンク

Oracle12cのプラガブル・データベース(PDB)は初期設定のままでは、毎回、手動で起動させる必要があります。
この記事ではOS起動時やOracle再起動時にPDBを自動起動にする方法を記載します。

PDBの自動起動設定

PDBの自動起動はOracle 12.1.0.2以降ではSQL文を使用して、12.1.0.1の環境ではトリガーを作成して自動起動設定をおこないます。

最初に現在の接続先を確認します。
現在の接続先がCDBの場合は「CDB$ROOT」と表示されます。

sqlplus / as sysdba

SQL> SHOW CON_NAME

CON_NAME
------------------------------
CDB$ROOT

接続するPDBの状態を確認します。
PDB(PDB$SEED以外)の状態が「MOUNTED」と表示される場合は、PDBを起動する必要があります。

SQL> SHOW PDBS

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         3 PDBORCL                        MOUNTED

PDBが停止している場合は、PDBを起動します。
PDBの状態が「READ WRITE」変わったことを確認します。

SQL> ALTER PLUGGABLE DATABASE <PDB名> OPEN;

プラガブル・データベースが変更されました。

SQL> SHOW PDBS

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         3 PDBORCL                        READ WRITE NO

Oracle 12.1.0.2以降

自動起動設定のSQL文を実行します。

SQL> ALTER PLUGGABLE DATABASE <PDB名> SAVE STATE;

Oracle 12.1.0.1の場合

自動起動設定のトリガーを作成します。

CREATE OR REPLACE TRIGGER <トリガー名>
  AFTER STARTUP ON DATABASE
BEGIN
  EXECUTE IMMEDIATE 'ALTER PLUGGABLE DATABASE <PDB名> OPEN';
END auto_start_pdbs;
/

[amazonjs asin=”4798040940″ locale=”JP” tmpl=”Small” title=”図解入門よくわかる最新Oracleデータベースの基本と仕組み第4版 (How‐nual Visual Guide Book)”]

タイトルとURLをコピーしました