Oracle-12c
將 PDB 插入沒有 XML 清單的新 CDB
在 oracle 12c 中,**ALTER PLUGGABLE DATABASE “PDB1” UNPLUG INTO ‘PDB1.XML’**語句創建 XML 清單。如果沒有先正確拔出 PDB 並且源 CDB 未處於活動狀態,是否可以將 PDB 插入新的 CDB?
您可以恢復未拔出 PDB 的 XML 文件。
- 將 PDB 文件夾複製到新機器上的 CDB 文件夾中。
- 以 SYSDBA 身份連接到新的 CDB(我使用 SQLDeveloper)
- 執行包DBMS_PDB.RECOVER
它使用 3 個參數:
- /path/to/new/file.xml
- NAME_OF_PDB(您可以使用與 OLD PDB 或 NEW ONE 相同的名稱)
- /路徑/到/pdb/文件夾/
例子:
BEGIN DBMS_PDB.RECOVER ( pdb_descr_file => '/path/to/new/file.xml.xml', pdb_name => 'NAME_OF_PDB', filenames => '/path/to/pdb/folder/' ); END; /
然後,您可以使用以下方法插入數據庫:
CREATE PLUGGABLE DATABASE NAME_OF_PDB USING '/path/to/new/file.xml' NOCOPY TEMPFILE REUSE;
然後打開 PDB:
ALTER PLUGGABLE DATABASE NAME_OF_PDB OPEN FORCE;
如果 PDB 未打開,請檢查 PDB_VIOLATIONS
SELECT * FROM PDB_PLUG_IN_VIOLATIONS;