oracle從備份集中恢復(fù)歸檔日志方法
來源:程序員人生 發(fā)布時(shí)間:2014-11-03 08:34:20 閱讀次數(shù):3592次
oracle從備份集中抓出歸檔日志方法
在大連醫(yī)院遇到這個(gè)問題,http://www.jyygyx.com/db/為歸檔狀態(tài),但歸檔終了后rman通過crontab自動(dòng)備走歸檔日志并刪除存在系統(tǒng)上的歸檔日志文件。在RealSync程序停止1段時(shí)間后,需要利用歸檔日志來解決日志丟失問題。
問題是:
http://www.jyygyx.com/db/中的控制文件中關(guān)于備份的元數(shù)據(jù)已丟失,但備份集存在。這時(shí)候候我們開始調(diào)用oracle的1個(gè)內(nèi)部非公然的函數(shù)包:dbms_backup_restore 來從備份集中抽取歸檔日志到指定的系統(tǒng)目錄。以滿足我們的需求。
語句以下:
declare
devtype varchar2(256);
done boolean;
begin
devtype:=sys.dbms_backup_restore.deviceAllocate(type=>'',ident=>'t2');
sys.dbms_backup_restore.restoreSetArchivedLog(destination=>'/archivelog02');
sys.dbms_backup_restore.restoreArchivedLog(thread=>2,sequence=>51500);
sys.dbms_backup_restore.restoreBackupPiece(done=>done,handle=>'/backup/zlhis/rman/AL_ZLHIS_20141030_862336902_23768_1',params=>null);
sys.dbms_backup_restore.deviceDeallocate;
end;
注意我們修改的地方是:destination=>'/archivelog02指定恢復(fù)出來歸檔日志的寄存系統(tǒng)目錄位置,thread表示rac的thread號(hào),sequence為需要恢復(fù)的那個(gè)歸檔日志序列號(hào),handle表示備份集的絕對(duì)路徑。
修改終了后,直接在sqlplus命令窗口履行便可。
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)