以下の内容はhttps://souiunogaii.hatenablog.com/entry/oracle23ai-create-pdbより取得しました。


Oracle 23ai に新規PDBを作成する手順

※[PR]当ブログの記事の中にはプロモーションが含まれています。

Oracle 23ai に新規PDBを作成する方法を知りたい。
・具体的な手順を教えてほしい。

こういった疑問に答えます。

本記事の内容

  1. Oracle 23ai に新規PDBを作成する手順

サトナカ (@souiunogaii)

この記事を書いている私は、某SIerに勤務しながら、
WEB系エンジニア・インフラエンジニアに憧れて、プログラミングおよびインフラ技術の勉強をしています。

こういった私が、解説していきます。

私が実機で試したコマンドや画像を載せて書いています。
記事の信頼性担保に繋がると思います。

Oracle 23ai に新規PDBを作成する手順

CDBに接続

[oracle@a-oracl01 ~]$ sqlplus / as sysdba

SQL*Plus: Release 23.0.0.0.0 - Production on94 14:00:56 2025
Version 23.9.0.25.07

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



Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for Free
Version 23.9.0.25.07
に接続されました。
[SYS@FREE] SQL>show con_name

CON_NAME
------------------------------
CDB$ROOT
[SYS@FREE] SQL>
[SYS@FREE] SQL>show pdbs

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

PDB作成

[SYS@FREE] SQL>CREATE PLUGGABLE DATABASE PDB名(8文字) ADMIN USER ユーザー名 IDENTIFIED BY ★★★パスワード FILE_NAME_CONVERT = ('/opt/oracle/oradata/FREE/pdbseed/', '/opt/oracle/oradata/FREE/PDB名/');

プラガブル・データベースが作成されました。
[SYS@FREE] SQL>show pdbs

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         3 FREEPDB1                       READ WRITE NO
         5 FINDTPDB                       MOUNTED

PDBのオープン,自動起動の設定

[SYS@FREE] SQL>alter pluggable database FINDTPDB open;

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

[SYS@FREE] SQL>show pdbs

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         3 FREEPDB1                       READ WRITE NO
         5 FINDTPDB                       READ WRITE NO
[SYS@FREE] SQL>alter pluggable database FINDTPDB save state;

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

PDBへ接続確認

[oracle@a-oracl01 ~]$ sqlplus / as sysdba;

SQL*Plus: Release 23.0.0.0.0 - Production on94 14:18:04 2025
Version 23.9.0.25.07

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



Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for Free
Version 23.9.0.25.07
に接続されました。


[SYS@FREE] SQL>alter session set container = FINDTPDB;

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


[SYS@FREE] SQL>show con_name

CON_NAME
------------------------------
FINDTPDB

tnsnames.oraの編集

/opt/oracle/product/23ai/dbhomeFree/network/admin/tnsnames.ora
# tnsnames.ora Network Configuration File: /opt/oracle/product/23ai/dbhomeFree/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

FREE =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = a-oracl01.blue-planet.internal)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = FREE)
    )
  )

LISTENER_FREE =
  (ADDRESS = (PROTOCOL = TCP)(HOST = a-oracl01.blue-planet.internal)(PORT = 1521))

FINDTPDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = a-oracl01.blue-planet.internal)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = FINDTPDB)
    )
  )

ログイン確認

[oracle@a-oracl01 ~]$ sqlplus findtadm/★★★パスワード@FINDTPDB

SQL*Plus: Release 23.0.0.0.0 - Production on94 14:20:50 2025
Version 23.9.0.25.07

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



Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for Free
Version 23.9.0.25.07
に接続されました。

Windows端末上のtnsnames.oraも編集

管理者ユーザーの権限設定

[oracle@a-oracl01 ~]$ sqlplus / as sysdba

SQL*Plus: Release 23.0.0.0.0 - Production on94 14:27:08 2025
Version 23.9.0.25.07

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



Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for Free
Version 23.9.0.25.07
に接続されました。
[SYS@FREE] SQL>alter session set container = FINDTPDB;

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


[SYS@FREE] SQL>show con_name

CON_NAME
------------------------------
FINDTPDB

現在の権限確認

[SYS@FREE] SQL>select GRANTEE, GRANTED_ROLE, ADMIN_OPTION from SYS.DBA_ROLE_PRIVS where GRANTEE = 'FINDTADM';

GRANTEE    GRANTED_ROLE         ADMIN_OPTION
---------- -------------------- ---------------
FINDTADM   PDB_DBA              YES



[SYS@FREE] SQL>select GRANTEE, PRIVILEGE, ADMIN_OPTION from SYS.DBA_SYS_PRIVS where GRANTEE = 'PDB_DBA';

GRANTEE    PRIVILEGE                                ADMIN_OPTION
---------- ---------------------------------------- ---------------
PDB_DBA    CREATE PLUGGABLE DATABASE                NO
PDB_DBA    CREATE SESSION                           NO

PDB_DBAロールにDBA権限を付与

[SYS@FREE] SQL>grant DBA to PDB_DBA;

権限付与が成功しました。
[SYS@FREE] SQL>select GRANTEE, GRANTED_ROLE, ADMIN_OPTION from SYS.DBA_ROLE_PRIVS where GRANTEE = 'PDB_DBA';

GRANTEE    GRANTED_ROLE         ADMIN_OPTION
---------- -------------------- ---------------
PDB_DBA    DBA                  NO
PDB_DBA    WM_ADMIN_ROLE        YES

管理者ユーザーでPDBへログイン

[oracle@a-oracl01 ~]$ sqlplus findtadm/★★★@FINDTPDB

SQL*Plus: Release 23.0.0.0.0 - Production on94 14:40:46 2025
Version 23.9.0.25.07

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

最終正常ログイン時間: 木 904 2025 14:24:02 +09:00


Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for Free
Version 23.9.0.25.07
に接続されました。
[FINDTADM@FINDTPDB] SQL>show con_name

CON_NAME
------------------------------
FINDTPDB

ユーザー表領域の作成

[FINDTADM@FINDTPDB] SQL>create tablespace users datafile '/opt/oracle/oradata/FREE/FINDTPDB/users01.dbf' size 300M reuse autoextend on next 500K maxsize unlimited;

表領域が作成されました。

[FINDTADM@FINDTPDB] SQL>select tablespace_name, block_size, initial_extent, max_extents, max_size, status, contents from SYS.DBA_TABLESPACES;

TABLESPACE_NAME      BLOCK_SIZE INITIAL_EXTENT MAX_EXTENTS   MAX_SIZE STATUS    CONTENTS
-------------------- ---------- -------------- ----------- ---------- --------- ---------------------
SYSTEM                     8192          65536  2147483645 2147483645 ONLINE    PERMANENT
SYSAUX                     8192          65536  2147483645 2147483645 ONLINE    PERMANENT
UNDOTBS1                   8192          65536  2147483645 2147483645 ONLINE    UNDO
TEMP                       8192        1048576             2147483645 ONLINE    TEMPORARY
USERS                      8192          65536  2147483645 2147483645 ONLINE    PERMANENT



[FINDTADM@FINDTPDB] SQL>select file_name, tablespace_name, bytes, blocks, status from SYS.DBA_DATA_FILES;

FILE_NAME                                          TABLESPACE_NAME         BYTES  BLOCKS STATUS
-------------------------------------------------- ------------------ ---------- ------- ---------
/opt/oracle/oradata/FREE/FINDTPDB/system01.dbf     SYSTEM              293601280   35840 AVAILABLE
/opt/oracle/oradata/FREE/FINDTPDB/sysaux01.dbf     SYSAUX              429916160   52480 AVAILABLE
/opt/oracle/oradata/FREE/FINDTPDB/undotbs01.dbf    UNDOTBS1            104857600   12800 AVAILABLE
/opt/oracle/oradata/FREE/FINDTPDB/users01.dbf      USERS               314572800   38400 AVAILABLE

開発者ユーザーの作成

[FINDTADM@FINDTPDB] SQL>create user findtuser01
  2  identified by ★★★
  3  default tablespace users
  4  quota unlimited on users
  5  temporary tablespace temp
  6  /

ユーザーが作成されました。

権限付与

[FINDTADM@FINDTPDB] SQL>grant create session to findtuser01;

権限付与が成功しました。

[FINDTADM@FINDTPDB] SQL>grant resource to findtuser01;

権限付与が成功しました。

[FINDTADM@FINDTPDB] SQL>grant unlimited tablespace to findtuser01;

権限付与が成功しました。

[FINDTADM@FINDTPDB] SQL>grant create view to findtuser01;

権限付与が成功しました。



以上の内容はhttps://souiunogaii.hatenablog.com/entry/oracle23ai-create-pdbより取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14