PDB$SEED から PDB を作成する

メモ:  Category:oracle

PDB$SEED から PDB を作成してみます。

PDB の作成

PDB を作成する種である PDB$SEED から新しい PDB を作成します。

まずは、 SQL*Plus で Oracle (ルート・コンテナ)に接続します。

>sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on 土 4月 9 08:21:02 2022
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.

Oracle Database 19c Standard Edition 2 Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
に接続されました。
SQL>

「show con_name;」を実行し、ルート・コンテナに接続していることを確認します。

SQL> show con_name;

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

PDB を作成する時、 PDB$SEED のデータファイルのパスが必要になるので、いったん PDB$SEED に接続します。

※OMF(Oracle Managed Files) で構成している場合は不要です。

SQL> alter session set container=PDB$SEED;

セッションが変更されました。

PDB$SEED に接続していることを確認しておきます。

SQL> show con_name;

CON_NAME
------------------------------
PDB$SEED

データファイルの場所を確認します。後から必要になるので、パスを覚えておきます。

SQL> select file_name from dba_data_files;

FILE_NAME
--------------------------------------------------------------------------------
D:\APP\ORACLE\ORADATA\ORCL\PDBSEED\DATAFILE\O1_MF_SYSTEM_K4W9HG83_.DBF

D:\APP\ORACLE\ORADATA\ORCL\PDBSEED\DATAFILE\O1_MF_SYSAUX_K4W9HS5D_.DBF

D:\APP\ORACLE\ORADATA\ORCL\PDBSEED\DATAFILE\O1_MF_UNDOTBS1_K4W9HXV0_.DBF

作業はルート・コンテナで行うので、もう一度ルート・コンテナに接続します。

SQL> conn / as sysdba
接続されました。
SQL> show con_name;

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

作成する PDB のデータファイルを配置するディレクトリを作成します。

SQL> host mkdir D:\app\oracle\oradata\ORCL\pdbbnote

PDB$SEED をから新しい PDB を作成します。

SQL> CREATE PLUGGABLE DATABASE pdbbnote ADMIN USER bnoteadm IDENTIFIED BY bnoteadm
     FILE_NAME_CONVERT = ('D:\APP\ORACLE\ORADATA\ORCL\PDBSEED\DATAFILE\'
     ,'D:\app\oracle\oradata\ORCL\pdbbnote\datafile');

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

コンテナ上の PDB を確認すると、新たに PDB が作成されたことが確認できます。

SQL> show pdbs;

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         3 PDB                            READ WRITE NO
         4 PDBBNOTE                       MOUNTED

作成した PDB は、 MOUNT 状態なので読み書きできるよう OPEN します。

SQL> alter pluggable database pdbbnote open;

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

もう一度コンテナ上の PDB を確認すると作成した PDB が読み書きできるようになっていることが確認できます。

SQL> show pdbs;

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

以上で PDB が作成できました。

bluenote by BBB