2014年8月11日 星期一

Oracle 12c - PDB into CDB



12C 有個很亮眼的功能,導入了類似容器與插件功能,就是所謂的CDB與PDB,這個功能可以很簡單的讓PDB在各平台上的CDB進行移除與移轉


以下是簡單示範

目前擁有的PDB



1.先在PDB建立一個 Test Table,最後好驗證移除與移轉是否成功


2. 對PDB shutdown ,並把PDB的Metadata 導出

PS:每次的移轉都必須重新導出一次,因為移轉成功後Oracle 會對文件寫入資訊,導致 Datafile 大小描述 與 xml 內的不同,會造成ORA-65139 錯誤


3.在CDB 刪除指定的 PDB


4.利用XML檔重新導入PDB,當然 datafile 位置要與原本的相同


5.重新open 後,進去PDB 來查詢一下剛剛建立的Table 是否存在





相關指令

查詢PDB相關資訊
select pdb_id,pdb_name,dbid,status,creation_scn from dba_pdbs;
select con_id,dbid,NAME,OPEN_MODE from v$pdbs;


shutdown PDB
alter pluggable database test_db1 close;
alter pluggable database test_db1 close immediate;
alter pluggable database all close;


open PDB
alter pluggable database test_db1 open;
alter pluggable database all open;


刪除PDB
drop pluggable database test_db1;
drop pluggable database test_db1 including datafiles;


拔除PDB (拔除后pdb只能mount不能open)
alter pluggable database test_db1 unplug into 'C:\app\test_db1.xml';


沒有留言:

張貼留言