将一个非CDB数据库以PDB形式装入一个CDB中

Oracle版本:12.1.0.2

现有一个非CDB的数据库ORCL,计划将其作为PDB,装入CDB2中。注:ORCL和CDB2都在同一服务器上。

进入ORCL,将其设置为只读模式


点击(此处)折叠或打开

  1. startup mount
  2. alter database open read only;
执行

点击(此处)折叠或打开

  1. SQL> EXEC DBMS_PDB.DESCRIBE ('/tmp/ORCL.xml');

  2. PL/SQL procedure successfully completed.
到这里,ORCL已经可以关闭了。而/tmp/ORCL.xml就是新生成的ORCL的描述文件,里面记录了数据文件的本地路径,因此必须在同一服务器上操作。

现在进入CDB2

点击(此处)折叠或打开

  1. SQL> CREATE PLUGGABLE DATABASE PDB2 USING '/tmp/ORCL.xml';
  2. #确认结果
  3. SQL> select * from cdb_pdbs;
还需要执行以下脚本,相当于PDB数据库的初始化

点击(此处)折叠或打开

  1. sqlplus sys@pdb2 as sysdba
  2. SQL> @?/rdbms/admin/noncdb_to_pdb
脚本运行时间较长,耐心等待即可。

之后,打开PDB


点击(此处)折叠或打开

  1. SQL> ALTER PLUGGABLE DATABASE pdb2 OPEN;
完成。

请使用浏览器的分享功能分享到微信等