「Oracle21c」Oracleのラガブルデータベース(PDB)名を変更する方法

環境
Windows 11 Pro 21H2 64bit
Oracle Database 21c Express Edition Release 21.0.0.0.0
SQL*Plus: Release 21.0.0.0.0

1.現在のPDB名を確認します
書式
show pdbs

操作例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 XEPDB1 READ WRITE NO
SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 XEPDB1 READ WRITE NO
SQL>  show pdbs

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

「XEPDB1」はプラガブルデータベースです。

2.RESTRICTED モードを変更します
書式
alter pluggable database PDB名 open restricted;

操作例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
SQL> alter pluggable database XEPDB1 open restricted;
alter pluggable database XEPDB1 open restricted
*
1でエラーが発生しました。:
ORA-65019: プラガブル・データベースXEPDB1はすでにオープンしています
SQL> alter pluggable database XEPDB1 open restricted; alter pluggable database XEPDB1 open restricted * 行1でエラーが発生しました。: ORA-65019: プラガブル・データベースXEPDB1はすでにオープンしています
SQL> alter pluggable database XEPDB1 open restricted;
alter pluggable database XEPDB1 open restricted
*
行1でエラーが発生しました。:
ORA-65019: プラガブル・データベースXEPDB1はすでにオープンしています

解決対策
open(READ WRITE)している場合は、一回PDBをCLOSEします。
書式

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
alter pluggable database PDB名 close;
alter pluggable database PDB名 close;
alter pluggable database PDB名 close;

操作例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
SQL> alter pluggable database XEPDB1 close;
プラガブル・データベースが変更されました。
SQL> alter pluggable database XEPDB1 close; プラガブル・データベースが変更されました。
SQL> alter pluggable database XEPDB1 close;

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

「XEPDB1」に接続します。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
SQL> alter session set container=XEPDB1;
セッションが変更されました。
SQL> alter session set container=XEPDB1; セッションが変更されました。
SQL> alter session set container=XEPDB1;

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

再度実行します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
SQL> alter pluggable database XEPDB1 open restricted;
プラガブル・データベースが変更されました。
SQL> alter pluggable database XEPDB1 open restricted; プラガブル・データベースが変更されました。
SQL> alter pluggable database XEPDB1 open restricted;

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

3.RESTRICTED モード変更後確認

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
3 XEPDB1 READ WRITE YES
SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 3 XEPDB1 READ WRITE YES
SQL> show pdbs

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

4.変更対象のPDBに接続します
書式

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
alter session set container=PDB名;
alter session set container=PDB名;
alter session set container=PDB名;

操作例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
SQL> alter session set container=XEPDB1;
セッションが変更されました。
SQL> alter session set container=XEPDB1; セッションが変更されました。
SQL> alter session set container=XEPDB1;

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

4.PDB名を変更します
書式

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
ALTER PLUGGABLE DATABASE RENAME GLOBAL_NAME TO 新しいPDB名;
ALTER PLUGGABLE DATABASE RENAME GLOBAL_NAME TO 新しいPDB名;
ALTER PLUGGABLE DATABASE RENAME GLOBAL_NAME TO 新しいPDB名;

操作例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
SQL> alter pluggable database rename global_name to ARKGAMEPDB;
プラガブル・データベースが変更されました。
SQL> alter pluggable database rename global_name to ARKGAMEPDB; プラガブル・データベースが変更されました。
SQL> alter pluggable database rename global_name to ARKGAMEPDB;

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

5.PDB名変更後確認

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
3 ARKGAMEPDB READ WRITE YES
SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 3 ARKGAMEPDB READ WRITE YES
SQL> show pdbs

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

 

Oracle 21c

Posted by arkgame