配置新可插拔数据库的详细步骤

从 PDB 种子创建新 PDB

使用 SQL*Plus 创建新 PDB
  1. 连接到 CDB 根目录:

    sqlplus / as sysdba
  2. 创建新的 PDB,使用 FILE_NAME_CONVERT 参数:

    CREATE PLUGGABLE DATABASE pdb1
    ADMIN USER admin1 IDENTIFIED BY admin_password ROLES=(CONNECT)
    FILE_NAME_CONVERT = ('/u01/app/oradata/CDB1/pdbseed', '/u01/app/oradata/CDB1/pdb1');
  3. 打开新创建的 PDB:

    ALTER PLUGGABLE DATABASE pdb1 OPEN;
  4. 确认 PDB 创建成功:

    SELECT pdb_name FROM dba_pdbs;

将未插入的 PDB 插入相同或另一个 CDB

  1. 停止未插入的 PDB:

    ALTER PLUGGABLE DATABASE pdb1 CLOSE IMMEDIATE;
  2. 断开 PDB:

    ALTER PLUGGABLE DATABASE pdb1 UNPLUG INTO '/path/to/unplug/pdb1.xml';
  3. 插入到新的 CDB:

    CREATE PLUGGABLE DATABASE pdb1 USING '/path/to/unplug/pdb1.xml'
    COPY FILE_NAME_CONVERT = ('/old/location/', '/new/location/');
  4. 打开新插入的 PDB:

    ALTER PLUGGABLE DATABASE pdb1 OPEN;

将非 CDB 插入到 CDB 中

  1. 创建与非 CDB 相同的临时用户:

    CREATE USER temp_user IDENTIFIED BY temp_password;
    GRANT CREATE SESSION, DBA TO temp_user;
  2. 插入非 CDB:

    BEGIN
       DBMS_PDB.DESCRIBE(
          pdb_descr_file => '/path/to/description.xml',
          noncdb        => 'NONCDB'
       );
    END;
  3. 创建新的 PDB:

    CREATE PLUGGABLE DATABASE pdb1 USING '/path/to/description.xml'
    SOURCE_FILE_NAME_CONVERT = ('/old/location/', '/new/location/');
  4. 打开新的 PDB:

    ALTER PLUGGABLE DATABASE pdb1 OPEN;

从另一个 PDB 克隆一个新的 PDB

  1. 连接到源 PDB:

    sqlplus sys@source_pdb as sysdba
  2. 将源 PDB 设置为只读模式:

    ALTER PLUGGABLE DATABASE source_pdb OPEN READ ONLY;
  3. 连接到 CDB 根目录,创建克隆 PDB:

    CREATE PLUGGABLE DATABASE clone_pdb FROM source_pdb
    FILE_NAME_CONVERT = ('/source/location/', '/clone/location/');
  4. 打开克隆 PDB:

    ALTER PLUGGABLE DATABASE clone_pdb OPEN;

将 PDB 从一个 CDB 迁移到另一个 CDB

  1. 在源 CDB 中关闭 PDB:

    ALTER PLUGGABLE DATABASE pdb1 CLOSE IMMEDIATE;
  2. 在源 CDB 中断开 PDB:

    ALTER PLUGGABLE DATABASE pdb1 UNPLUG INTO '/path/to/unplug/pdb1.xml';
  3. 在目标 CDB 中创建新的 PDB:

    CREATE PLUGGABLE DATABASE pdb1 USING '/path/to/unplug/pdb1.xml'
    COPY FILE_NAME_CONVERT = ('/old/location/', '/new/location/');
  4. 打开新插入的 PDB:

    ALTER PLUGGABLE DATABASE pdb1 OPEN;

从另一个 PDB 代理一个新的 PDB

  1. 连接到 CDB 根目录:

    sqlplus / as sysdba
  2. 创建代理 PDB:

    CREATE PLUGGABLE DATABASE proxy_pdb AS PROXY FROM source_pdb
    FILE_NAME_CONVERT = ('/source/location/', '/proxy/location/');
  3. 打开代理 PDB:

    ALTER PLUGGABLE DATABASE proxy_pdb OPEN;

非常感谢您读到这里!如果您觉得这篇文章对您有帮助,可以关注一下博主。关注后,您将第一时间获得最新的AI、云计算、运维(Linux、数据库,容器等)技术,以及更多实用的技能干货。

学习成功人士的经验,提供全面的学习资源和社群支持,多种副业选择,总有一个适合你。

本文由mdnice多平台发布


逼格高的汤圆
10 声望2 粉丝