如果一個表空間的數(shù)據(jù)文件損壞,在有備份的情況下,那么可以使用數(shù)據(jù)文件的備份進行還原,但是還需要歸檔文件進行恢復(fù),才能使數(shù)據(jù)文件到達一個最新的一致性狀態(tài),從而才能打開數(shù)據(jù)庫。如果需要的歸檔文件無法提供,比如被刪除了,那么在這種情況下如何打開數(shù)據(jù)庫呢?
我們提供的服務(wù)有:網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、蓬溪ssl等。為近1000家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的蓬溪網(wǎng)站制作公司
在這種情況下由于缺少歸檔,數(shù)據(jù)庫無法恢復(fù),但是如果與該表空間相關(guān)的數(shù)據(jù)改變很少或者基本沒有改變的情況下可以通過改變數(shù)據(jù)文件頭的SCN號,讓其和System Checkpoint SCN和Datafile Checkpoint SCN號一致,就可以讓Oracle避開對該文件的檢查,Oracle就不會去做介質(zhì)恢復(fù),而只做實例恢復(fù),這樣就可以實現(xiàn)完全恢復(fù),及時打開數(shù)據(jù)庫。
一般來說,推進數(shù)據(jù)文件頭的SCN號有兩種處理辦法:第一,利用BBED(Block Brower and Editor)修改數(shù)據(jù)文件頭,推進SCN號來打開數(shù)據(jù)庫。第二,設(shè)置隱含參數(shù)“_ALLOW_RESETLOGS_CORRUPTION”為TRUE來打開數(shù)據(jù)庫,該參數(shù)默認(rèn)為FALSE,待數(shù)據(jù)庫打開后,要將該參數(shù)從參數(shù)文件中去掉,命令如下所示:
ALTER SYSTEM SET "_ALLOW_RESETLOGS_CORRUPTION"=TRUE SCOPE=SPFILE;--跳過數(shù)據(jù)庫一致性檢查
ALTER SYSTEM RESET "_ALLOW_RESETLOGS_CORRUPTION" SCOPE=SPFILE SID='*';--取消該參數(shù)