針對ORA-01111, ORA-01110, ORA-01157的處理

異常數據庫

在從庫發現DG同步有延遲時執行recover失敗,後臺日誌會報以下異常:服務器

針對ORA-01111, ORA-01110, ORA-01157的處理

解決oracle

根據源端地址和本地數據文件存放路徑,整理語句以下:app

alter system set STANDBY_FILE_MANAGEMENT='MANUAL' scope=both;
alter database rename file '/data/app/oracle/product/11.2.0/dbhome_1/dbs/UNNAMED00243' to '/data/app/oracle/oradata/PSPROD/PSPRODDG/datafile/o1_mf_gpapp_h4dnw6m6_.dbf'

此時報錯以下:ide

針對ORA-01111, ORA-01110, ORA-01157的處理

此時須要注意,o1_mf_gpapph4dnw6m6.dbf,這種命名數據文件的方式很奇怪,通常這種方式多出如今ASM磁盤中,由數據庫定義名稱,此時我就想到了OMF,查看相關參數,確認此庫爲OMF管理方式管理數據文件。操作系統

針對ORA-01111, ORA-01110, ORA-01157的處理

此處驗證證實了個人猜測,因此修改語句從新執行,修復了此問題。日誌

alter database create datafile '/data/app/oracle/product/11.2.0/dbhome_1/dbs/UNNAMED00243' as new;
alter system set STANDBY_FILE_MANAGEMENT='AUTO' scope=both;

分析code

在備用數據庫中建立文件爲UNNAMED的緣由有不少,這次是由於備庫上的磁盤空間不足致使的。blog

STANDBY_FILE_MANAGEMENT 在啓用自動備用文件管理後,將在備用數據庫上覆制主數據庫上的操做系統文件添加和刪除。此時,咱們在主服務器上添加數據文件,而恢復過程(MRP)正在嘗試應用存檔,因爲該參數設置,它將在$ ORACLE_HOME / dbs中建立一個未命名的文件將致使殺死MRP進程,錯誤以下所示。進程

當數據庫由OMF管理時,修改路徑時可使用 new 來代替路徑的位置,修改 redo 除外。

針對ORA-01111, ORA-01110, ORA-01157的處理

相關文章
相關標籤/搜索