Oracle12c多租戶資料庫備份與恢復 - 恢復整個CDB和其下的PDBs 2

tolywang發表於2014-03-07

b. 修改目標庫中初始引數中的db_name為源資料庫名稱(instance_name即SID不用一致),這裡目標資料庫
建立的時候CDB庫的db_name為 test12 , SID也是test12,  備份的源資料庫db_name是test12c, 所以這
裡修改目標庫的初始化引數db_name為test12c, 其它引數酌情修改(比如加快RMAN恢復)。


c. 需要手工建立各PDBs的目錄,否則恢復時會報錯找不到目錄。
$ cd  /data01/oracle12c/oradata/test12
$ mkdir   pdbseed  cont01plug01  plugdb   mypdb1

d. 恢復資料庫 

$ rman target  /  nocatalog
RMAN> startup nomount
RMAN> restore controlfile from '/data01/tmp/fullbak/contorlfile_20140304_23p2bk0n_1_1_67.ctlbak';

 

附:若DBCA建目標庫的時候沒有點選Create As Container Databasee建立一個空的Container Database,那麼alter database mount時會報錯:
-----------------------------------------------------------------------------------------------
RMAN> alter database mount ;

RMAN-03002: failure of sql statement command at 03/06/2014 09:29:21
ORA-65093: container database not set up properly

因為安裝12c CDB資料庫的時候,沒有點選Create As Container Database建立一個空的Container
Database或含有PDBs的Container Database ,導致建立的資料庫是普通的12c資料庫。12c建立容器
資料庫Container Database和普通Database存在一點點小的區別,需要指定enable pluggable database,
已建立的資料庫目前無法轉換為容器資料庫。普通12c資料庫中的 enable_pluggable_database 參
數值為FALSE . 檢查下 enable_pluggable_database, 如果=true, 那說明是CDB .

如果是普通12c資料庫,需要使用CDB+PDBs的備份來這裡恢復的話,就會報錯ora-65093:
container database not set up properly 。
-----------------------------------------------------------------------------------------------

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-1103161/,如需轉載,請註明出處,否則將追究法律責任。

相關文章