您好,登錄后才能下訂單哦!
十六、歸檔模式下的完全恢復(fù)
在歸檔模式下,擁有RMAN的備份和歸檔重做日志以及當(dāng)前的重做日志文件,可以做到數(shù)據(jù)庫的完全恢復(fù),并且是聯(lián)機(jī)狀態(tài)的下的恢復(fù)。
1.非系統(tǒng)表空間損壞的恢復(fù)
做數(shù)據(jù)庫完全備份
RMAN> backup as compressed backupset database plus archivelog delete all input;
創(chuàng)建測(cè)試表
SQL> create table test123 tablespace users as select * from dba_segments;
刪除測(cè)試表的表空間數(shù)據(jù)文件
SQL> ! rm -rf /u01/app/oradata/orcl/users01.dbf
重啟數(shù)據(jù)庫
SQL> shutdown immediate
SQL> startup
為了先打開數(shù)據(jù)庫,先將該數(shù)據(jù)庫文件離線。
SQL> alter database datafile 4 offline;
SQL> alter database open; --這里也可以在mounted狀態(tài)進(jìn)行恢復(fù)后再打開數(shù)據(jù)庫
還原數(shù)據(jù)文件
RMAN> restore datafile 4;
恢復(fù)數(shù)據(jù)文件
RMAN> recover datafile 4;
將數(shù)據(jù)庫文件online
SQL> alter database datafile 4 online;
也可以將以上命令放在rman腳本中。
run {
sql 'alter database datafile 4 offline';
restore tablespace users;
recover tablespace users;
sql 'alter database datafile 4 online';
}
2.系統(tǒng)表空間損壞的恢復(fù)
系統(tǒng)表空間損壞,必須先做恢復(fù),數(shù)據(jù)庫才能打開。
刪除數(shù)據(jù)文件system01.dbf
[oracle@oracle11g ~]$ rm -rf /u01/app/oradata/orcl/system01.dbf
注意:此時(shí)可能會(huì)無法重新連接數(shù)據(jù)庫:
使用RMAN登錄也失敗,使用shutdown abort停止數(shù)據(jù)庫:
啟動(dòng)數(shù)據(jù)庫到mount狀態(tài)
SQL> shutdown immediate
SQL> startup
使用RMAN腳本恢復(fù)數(shù)據(jù)文件。
RMAN> run {
sql 'alter database datafile 1 offline';
restore datafile 1;
recover datafile 1;
sql 'alter database datafile 1 online';
}
啟動(dòng)數(shù)據(jù)庫
SQL> alter database open;
3.所有數(shù)據(jù)文件丟失的恢復(fù)
刪除所有數(shù)據(jù)文件。
[oracle@oracle11g orcl]$ rm -f /u01/app/oradata/orcl/*.dbf
使用RMAN腳本恢復(fù)數(shù)據(jù)文件。
SQL> shutdown abort
SQL> startup
RMAN> run {
restore database;
recover database;
sql 'alter database open';
}
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。