Oracle

數據庫無法啟動顯示讀取控製文件錯誤

  • June 23, 2021

在 Windows Server 2008 R2 上,當我嘗試啟動 Oracle 11g 數據庫時,它顯示錯誤:

SQL> startup
ORACLE instance started.

Total System Global Area 3206836224 bytes
Fixed Size                  2180024 bytes
Variable Size            1996491848 bytes
Database Buffers         1191182336 bytes
Redo Buffers               16982016 bytes
ORA-00204: error in reading (block 3, # blocks 8) of control file
ORA-00202: control file: 'D:\APP\FROZEN\ORADATA\ORCL\CONTROL01.CTL'
ORA-27070: async read/write failed
OSD-04006: ReadFile() failure, unable to read from file
O/S-Error: (OS 1117) The request could not be performed because of an I/O device error.

磁碟線上。

誰能幫我解決這個問題?

如果您的磁碟沒有問題並且控製文件已損壞,您可以執行以下操作:在 nomount 中啟動數據庫(啟動 nomount),然後檢查命令的輸出

show parameter control

(在 sqlplus 中執行命令)。如果命令顯示多個控製文件,您可以使用輸出中列出的其他控製文件中的 onw 覆蓋 D:\APP\FROZEN\ORADATA\ORCL\CONTROL01.CTL。

或者,您可以嘗試使用快照控製文件覆蓋壞的控製文件:

快照控製文件是由 RMAN 在作業系統特定位置創建的數據庫控製文件的副本。RMAN 創建快照控製文件,以便在重新同步恢復目錄或備份控製文件時使用一致版本的控製文件。

在 Windows 中,預設位置應該是

%ORACLE_HOME%/database

快照控製文件的名稱應為:

snapcf_instancename.f

如果不能這樣解決,就必須從備份中恢復控製文件。問候喬瓦

引用自:https://dba.stackexchange.com/questions/127464