Oracle 12c PDB的數(shù)據(jù)備份恢復(fù)
今天測試了一下12c中的PDB還原恢復(fù),里面還是有不少的差別。
我就簡單模擬了一個(gè)破壞場景,是在一個(gè)未打開的PDB tcymob0從中刪除了數(shù)據(jù)文件usres01.dbf,然后嘗試備份恢復(fù)。
當(dāng)然在這個(gè)操作前,我們使用RMAN來備份,使用命令backup database即可備份整個(gè)數(shù)據(jù)庫。
手工破壞的語句如下:

這個(gè)時(shí)候的還原工作就很清晰了,直接還原對應(yīng)的表空間或者數(shù)據(jù)文件都可以。比如表空間是users,則需要指定PDB的名字。
整個(gè)恢復(fù)工作做好之后,留下來的任務(wù)就是直接啟庫了,但是奇怪的是卻報(bào)了下面的錯(cuò)誤。
Oracle對這個(gè)錯(cuò)誤的解釋如下:
這下我還真想起來了,之前測試的時(shí)候,我使用RMAN模擬跨平臺(tái)的PDB備份恢復(fù),使用了unplug的方式,根據(jù)這個(gè)錯(cuò)誤,對于這個(gè)問題也有了思路。
之前unplug的語句如下:
在這個(gè)基礎(chǔ)上,我們可以使用plugging的方式重新掛載即可。
而在這個(gè)時(shí)候,需要做的第一件事情,就是重新備份了。因?yàn)橛辛薲rop pluggable database的操作之后,容器的設(shè)置會(huì)發(fā)生變化,比如con_id,原來的備份就識(shí)別不了了。
下一篇:Oracle ADG備庫SYSAUX數(shù)據(jù)文件壞塊恢復(fù)處理