在啟動資料庫的時候,open階段總是可能出現各種各樣的問題,ora-01113: file 1 needs media recovery
total system global area 314572800 bytes
control file created.
sql> alter database open;ora-01113: file 1 needs media recovery
其實這個時候簡單分析一下就會明白,上次是shutdown abort的方式,則對應的檢查點資訊無法寫入資料檔案,在open階段smon會做這個校驗。
file# checkpoint_change# last_change#
sql> select file#,checkpoint_change# from v$datafile_header;
file# checkpoint_change#
sql> select checkpoint_change# from v$database;
checkpoint_change#
sql> recover database;
checkpoint_change#
file# checkpoint_change# last_change#
sql> alter database open;
database altered.
sql> select file#,checkpoint_change#,last_change# from v$datafile;
file# checkpoint_change# last_change#
sql> select checkpoint_change# from v$database;
checkpoint_change#
其實這個過程中,恢復的基準就是檢查點,也就是scn.
sql> alter tablespace data offline immediate;
sql> alter tablespace data begin backup;
這個時候還是啟用歸檔。
sql> shut immediate
total system global area 314572800 bytes
database altered.
sql> alter database open;
database altered.
sql> alter tablespace data begin backup;
tablespace altered.
sql> shutdown immediate;ora-01113: file 5 needs media recovery就需要明辨這個錯誤背後的意思
total system global area 314572800 bytesora-01113: file 5 needs media recovery
其實碰到這個錯誤,還是需要結合多種場景來考慮,比如檢視是否熱備份已經正常完成,之前的操作是什麼樣的?
sql> select *from v$backup;
file# status change# time
file# checkpoint_change# last_change#879352
sql> select file#,checkpoint_change# from v$datafile_header;
file# checkpoint_change#879352
sql> select checkpoint_change# from v$database;
checkpoint_change#
sql> alter tablespace data end backup;
tablespace altered.
sql> select file#,checkpoint_change# from v$datafile_header;
file# checkpoint_change#
sql> select checkpoint_change# from v$database;
checkpoint_change#
sql> alter database open;
database altered.
sql> select checkpoint_change# from v$database;
checkpoint_change#
sql> select file#,checkpoint_change# from v$datafile_header;
file# checkpoint_change#
其實熱備份的這個錯誤也可以這麼來處理。
sql> alter tablespace data begin backup;
tablespace altered.
sql> shutdown abort
total system global area 314572800 bytessql> recover datafile 5;
database altered.
sql> select *from v$backup;
file# status change# time
總之解決問題就行,scn的部分著實是需要關注的乙個重點,這也是備份恢復的基石。
錯誤ORA 01113 資料庫介質檔案錯誤
c documents and settings administrator sqlplus nolog sql plus release 8.1.7.0.0 production on 星期一 7月 23 11 45 34 2007 sql conn sys manager as sysdba 已...
ORA 01113 檔案 4 需要介質恢復
原因是資料庫檔案處於離線狀態下才報ora 01113 檔案 4 需要介質恢復錯誤 檢視資料檔案的狀態 select name,status from v datafile 如何解決 在資料庫啟動例項並不開啟狀態下,恢復介質,具體操作如下 sql recover datafile e oracle p...
ORA 01113,ORA 01110的簡單解決
2012 03 13 16 59 30 標籤 分類 oracle資料庫 分析和解決問題 1.重起資料庫 c documents and settings jacken sqlplus nolog sql conn sys 123456 as sysdba sql shutdown immediate...