PR

Oracle Database プラガブルデータベース(PDB)名の変更方法

スポンサーリンク
ORACLE

Oracle 12c からの機能であるプラガブルデータベースでは、PDBの名前を変更できます。

今回はPDB名の変更方法を紹介します。

プラガブルデータベース(PDB)の名前を変更する方法

現状のPDB名を確認します。以下の例では”HOEGEPDB”という名前になっていることが確認できます。

SQL> show pdbs

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

PDB名を変更するには、RESTRICTED モードでなければ変更できないので、RESTRICTED モードに変更します。

もしopen(READ WRITE)している場合は、一回CLOSEしてからRESTRICTED モードに変更してください。

SQL> alter pluggable database HOEGEPDB open restricted;

Pluggable database altered.

SQL> show pdbs

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

変更対象のPDBに接続します。

SQL> alter session set container=HOEGEPDB;

Session altered.

以下のSQLを実行し、PDB名を”HOEGEPDB”から”HOGEPDB”に変更します。

ALTER PLUGGABLE DATABASE RENAME GLOBAL_NAME TO <新しいPDB名>;

SQL> alter pluggable database rename global_name to HOGEPDB;

Pluggable database altered.

show pdbs コマンドで確認すると名前が変更されています。

SQL> show pdbs

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         3 HOGEPDB                        READ WRITE YES

注意

Oracle内部のPDBは変更されますが、OS上のPDBのディレクトリ名は変更されないので、注意してください。

[oracle@ol77 ~]$ ls -ld /u01/app/oracle/oradata/HOGE/hoegepdb/
drwxr-x--- 2 oracle oinstall 104 Apr 28 20:56 /u01/app/oracle/oradata/HOGE/hoegepdb/