corrupted block的一次處理和古舊版本的PL/SQL Developer問題

Karsus發表於2008-02-21

今天早晨遇到的問題

[@more@]

一早來上班就收到User的反應,說有些資料查不到,看了他們的截圖,發現可能遇到corrupted block了。趕緊上去看一下嚴重程度先。

08:23:11 SQL> select * from ISN where ISN='NS1S82038200461';

select * from ISN where ISN='NS1S82038200461'

*

ERROR at line 1:

ORA-01578: ORACLE data block corrupted (file # 16, block # 68845)

ORA-01110: data file 16: '/u02/app/oracle/oradata/shxxx1/isn0807_data01.dbf'

08:25:00 SQL> select file#,NAME from v$datafile where file#=16;

16

/u02/app/oracle/oradata/shxxx1/isn0807_data01.dbf

08:38:57 SQL> select * from dba_extents

08:39:22 2 where file_id=16 and block_id<=68845 and (block_id+blocks-1)>=68845;

TP ISN

ISN_0807_S5 TABLE SUBPARTITION ISN0807_TAB 8 16 68617

8388608 1024 16

DBV-00200: Block, dba 67177709, already marked corrupted

DBVERIFY - Verification starting : FILE = isn0807_data01.dbf

DBVERIFY - Verification complete

Total Pages Examined : 77824

Total Pages Processed (Data) : 68656

Total Pages Failing (Data) : 0

Total Pages Processed (Index): 0

Total Pages Failing (Index): 0

Total Pages Processed (Other): 984

Total Pages Processed (Seg) : 0

Total Pages Failing (Seg) : 0

Total Pages Empty : 8184

Total Pages Marked Corrupt : 1

Total Pages Influx : 0

Highest block SCN : 65158286119 (15.733776679)

看來真的有,聯想到昨天的問題( 這個一會再提 ).

先著手處理下,還好只是一個partition table的一個subpartition。先估計一下影響範圍向User打聲招呼。

1. 確定Physical Standby Database的相應檔案可以用。Shutdown之。

2. Cold backup standby上相應的datafile,起standby.

3. 更改cold backup出來的datafile的檔名,並SCPPrimary的對應目錄下。

4. Offline有問題的datafile,並改名。

5. cold backupdatafile改回原名

6. recover datafile

7. Online datafile

聯想到昨天Primary突然crash的問題:

先出了一些ORA-07445ORA-600,提示block corrupted。然後DBW Terminated, Instance Crash.

見鬼的是居然OracleTrace都沒留下就撒手了囧.

不過有一月份Crash的經驗,判定還是有人用古舊版本的PL/SQL Developer導致(9208任何平臺都會發生)。但是沒Trace file,不曉得是哪個傢伙。

alert.log看這次的Crash導致了dbfile上的corrupted block的產生。一月份的那次只是buffer裡的corrupted,今後遇到連trace 都沒留下的crash要格外當心壞快問題了。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10856805/viewspace-999764/,如需轉載,請註明出處,否則將追究法律責任。

相關文章