ORA-10567故障處理

來源:互聯網
上載者:User

一:情境描述

資料庫版本:11.2.0.1 64bit active dataguard

作業系統版本:centos 5.8 64bit

早上資料庫例行檢查,發現undo資料表空間資料檔案太大,查詢了最大的block後,發現實際只使用到幾百兆。於是想當然alter database datafile 'xxxx' resize 3G;萬事ok!在這之前,遇到這種情況,也都是這樣處理,均未出現過問題!個人不太喜歡建立undo資料表空間然後改預設undo資料表空間的做法。


二:問題出現

沒過多久,手機收到監控警示資訊,從庫從read only with apply狀態直接變成read only狀態,mrp進程死掉了!alert日誌警示如下:

Errors in file /u01/app/oracle/diag/rdbms/db2/xxxx/trace/xxxx_mrp0_7844.trc:ORA-00600: internal error code, arguments: [3020], [3], [10232], [12593144], [], [], [], [], [], [], [], []ORA-10567: Redo is inconsistent with data block (file# 3, block# 10232, file offset is 83820544 bytes)ORA-10564: tablespace UNDOTBS1ORA-01110: data file 3: '/u01/app/oracle/oradata/xxxx/undotbs01.dbf'ORA-10560: block type 'KTU SMU HEADER BLOCK'MRP0: Background Media Recovery process shutdown (xxxx)

650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131228/22411Q301-0.jpg" title="1.jpg" />


三:問題分析

主從庫的db_lost_write_protect參數均設定為typical

SQL> show parameter protec;


NAME                                 TYPE        VALUE

------------------------------------ ----------- ----------

db_lost_write_protect                string      typical


猜想因為undo資料表空間資料檔案的收縮操作導致從庫的undo資料檔案丟失寫,不知道這算不算oracle bug!


四:問題處理

1:關閉從庫資料庫執行個體

2: 主庫上讓undo資料表空間進入熱備份狀態

alter tablespace undotbs01 begin backup;

3:利用操作scp命令複製資料檔案至從庫指定位置,原有檔案重新命名下

4:啟動從庫資料庫執行個體到read only狀態,開啟mrp進程,發現alert日誌無報錯資訊

5:主庫關閉undo資料表空間熱備份狀態

alter tablespace undotbs01 end backup;

6:刪除從庫原有的undo資料表空間資料檔案備份


本文出自 “斬月” 部落格,謝絕轉載!

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.