【正文】
數(shù)據(jù)庫(kù)是RAC,flash recovery area 必須位于共享存儲(chǔ)中。C. 數(shù)據(jù)庫(kù)必須處于archivelog 模式。操作示例Flashback database 即可以在rman 中執(zhí)行,也可以在sql*plus 中執(zhí)行,其命令格式都是一樣的,在這個(gè)示例中,我們所有操作都是在sql*plus 中執(zhí)行。A. 檢查是否啟動(dòng)了flash recovery area:SQL show parameter db_recovery_fileNAME TYPE VALUE db_recovery_file_dest string /orahome/flash_recovery_areadb_recovery_file_dest_size big integer 2GB. 檢查是否啟用了歸檔SQL archive log list。C. 檢查是否啟用了flashback database 和force_loggingSQL select flashback_on,force_logging from v$database。FLASHBACK_ON FOR NO NO如果未啟用則先啟用:SQL alter system set db_flashback_retention_target=1440 scope=both。 (單位是分鐘,1440表示一天)SQL shutdown immediate。SQL startup mount exclusive。SQL alter database flashback on。SQL alter database force logging。SQL select flashback_on,force_logging from v$database。FLASHBACK_ON FOR YES YESSQL alter database open。D. 查詢當(dāng)前的sSQL select current_s from v$database。CURRENT_SCN 248739E. 模擬誤刪除操作SQL 做一些DML/DDL操作F. 重新啟動(dòng)到mount 狀態(tài),然后執(zhí)行恢復(fù)SQL conn /as sysdbaSQL shutdown immediateSQL startup mountSQL flashback database to s 248739。提示:此處flashback database to timestamp 也是一樣的,不過你需要估計(jì)好恢復(fù)到的時(shí)間點(diǎn)。注意此處,在你執(zhí)行完flashback database 命令之后,oracle 提供了兩種方式讓你修復(fù)數(shù)據(jù)庫(kù):第一種直接 alter database open resetlogs 打開數(shù)據(jù)庫(kù),當(dāng)然,指定s 或者timestamp 時(shí)間點(diǎn)之后產(chǎn)生的數(shù)據(jù)統(tǒng)統(tǒng)丟失。另一種方式是先執(zhí)行 alter database open read only 命令以readonly 模式打開數(shù)據(jù)庫(kù),然后立刻通過邏輯導(dǎo)出的方式將誤操作涉及表的數(shù)據(jù)導(dǎo)出,再執(zhí)行recover database 命令以重新應(yīng)用數(shù)據(jù)庫(kù)產(chǎn)生的redo,將數(shù)據(jù)庫(kù)修復(fù)到flashback database 操作前的狀態(tài),然后再通過邏輯導(dǎo)入的方式,將之前誤操作的表重新導(dǎo)入,這樣的話對(duì)現(xiàn)有數(shù)據(jù)的影響最小,不會(huì)有數(shù)據(jù)丟失。G. 打開數(shù)據(jù)庫(kù)SQL alter database open resetlogs。H. 驗(yàn)證數(shù)據(jù)SQL 查詢誤操作的數(shù)據(jù)是否回到了從前限制條件A. Flashback database 是用來(lái)將數(shù)據(jù)庫(kù)中的數(shù)年恢復(fù)至之前的某個(gè)時(shí)間點(diǎn),而非介質(zhì)恢復(fù),你不可能使用flashback database 恢復(fù)之前被刪除的某個(gè)數(shù)據(jù)文件。B. 如果控制文件被重建,則在此之前所產(chǎn)生的所有flashback 日志統(tǒng)統(tǒng)失效,不能將數(shù)據(jù)庫(kù)flashback到控制文件被重建之前。C. 對(duì)于nologging 模式下插入的數(shù)據(jù),flashback database 也恢復(fù)不了,因此建議數(shù)據(jù)庫(kù)處于force logging模式。9 / 9