复杂环境带来的坏块
各位大佬好:附件是报错的trc 文件
我说下环境:
虚拟环境 hyper-v 群集 windows 2013 操作系统
虚拟机 os redhat6.2 11g rac 版本11.2.0.1.0 ,2台节点分别在2个 hyper-v 群集上面
alert 出现:Sat Nov 15 22:25:26 2014
Hex dump of (file 14, block 459853) in trace file /u01/app/oracle/diag/rdbms/cordysdb/cordysdb1/trace/cordysdb1_ora_51329.trc
Corrupt block relative dba: 0x0387044d (file 14, block 459853)
Bad header found during backing up datafile
Data in bad block:
type: 40 format: 2 rdba: 0x038703cd
last change scn: 0x091d.4f968c3f seq: 0x2 flg: 0x04
spare1: 0x0 spare2: 0x0 spare3: 0x3
consistency value in tail: 0x8c3f2802
check value in block header: 0xee4b
computed block checksum: 0x0
Reread of blocknum=459853, file=+CORDYS_DATA01/cordysdb/datafile/dts_cordysbpm.271.827227815. found valid data
Hex dump of (file 14, block 459854) in trace file /u01/app/oracle/diag/rdbms/cordysdb/cordysdb1/trace/cordysdb1_ora_51329.trc
Corrupt block relative dba: 0x0387044e (file 14, block 459854)
Bad header found during backing up datafile
Data in bad block:
type: 40 format: 2 rdba: 0x038703ce
last change scn: 0x091d.4fa68ab2 seq: 0x1 flg: 0x04
spare1: 0x0 spare2: 0x0 spare3: 0x3
consistency value in tail: 0x8ab22801
check value in block header: 0xca3d
computed block checksum: 0x0
Reread of blocknum=459854, file=+CORDYS_DATA01/cordysdb/datafile/dts_cordysbpm.271.827227815. found valid data
Hex dump of (file 14, block 459855) in trace file /u01/app/oracle/diag/rdbms/cordysdb/cordysdb1/trace/cordysdb1_ora_51329.trc
Corrupt block relative dba: 0x0387044f (file 14, block 459855)
Bad header found during backing up datafile
Data in bad block:
type: 40 format: 2 rdba: 0x038703cf
last change scn: 0x0000.35e51ab6 seq: 0x2 flg: 0x04
spare1: 0x0 spare2: 0x0 spare3: 0x3
consistency value in tail: 0x1ab62802
check value in block header: 0x28ce
computed block checksum: 0x0
Reread of blocknum=459855, file=+CORDYS_DATA01/cordysdb/datafile/dts_cordysbpm.271.827227815. found valid data
Sat Nov 15 23:37:37 2014
Hex dump of (file 14, block 2194939) in trace file /u01/app/oracle/diag/rdbms/cordysdb/cordysdb1/trace/cordysdb1_ora_51329.trc
Corrupt block relative dba: 0x03a17dfb (file 14, block 2194939)
Bad header found during backing up datafile
Data in bad block:
type: 40 format: 2 rdba: 0x03a17d7b
last change scn: 0x091d.3b0b0a74 seq: 0x1 flg: 0x04
spare1: 0x0 spare2: 0x0 spare3: 0x3
consistency value in tail: 0x0a742801
check value in block header: 0x3a02
computed block checksum: 0x0
Reread of blocknum=2194939, file=+CORDYS_DATA01/cordysdb/datafile/dts_cordysbpm.271.827227815. found valid data
Hex dump of (file 14, block 2194940) in trace file /u01/app/oracle/diag/rdbms/cordysdb/cordysdb1/trace/cordysdb1_ora_51329.trc
Corrupt block relative dba: 0x03a17dfc (file 14, block 2194940)
Bad header found during backing up datafile
Data in bad block:
type: 40 format: 2 rdba: 0x03a17d7c
last change scn: 0x091d.37215e68 seq: 0x2 flg: 0x04
spare1: 0x0 spare2: 0x0 spare3: 0x3
consistency value in tail: 0x5e682802
check value in block header: 0x8323
computed block checksum: 0x0
Reread of blocknum=2194940, file=+CORDYS_DATA01/cordysdb/datafile/dts_cordysbpm.271.827227815. found valid data
Hex dump of (file 14, block 2194941) in trace file /u01/app/oracle/diag/rdbms/cordysdb/cordysdb1/trace/cordysdb1_ora_51329.trc
Corrupt block relative dba: 0x03a17dfd (file 14, block 2194941)
Bad header found during backing up datafile
Data in bad block:
type: 40 format: 2 rdba: 0x03a17d7d
last change scn: 0x091d.4048e976 seq: 0x1 flg: 0x04
spare1: 0x0 spare2: 0x0 spare3: 0x3
consistency value in tail: 0xe9762801
check value in block header: 0x718f
computed block checksum: 0x0
Reread of blocknum=2194941, file=+CORDYS_DATA01/cordysdb/datafile/dts_cordysbpm.271.827227815. found valid data
Hex dump of (file 14, block 2194942) in trace file /u01/app/oracle/diag/rdbms/cordysdb/cordysdb1/trace/cordysdb1_ora_51329.trc
Corrupt block relative dba: 0x03a17dfe (file 14, block 2194942)
Bad header found during backing up datafile
Data in bad block:
type: 40 format: 2 rdba: 0x03a17d7e
last change scn: 0x091d.3b432042 seq: 0x1 flg: 0x04
spare1: 0x0 spare2: 0x0 spare3: 0x3
consistency value in tail: 0x20422801
check value in block header: 0xd9c2
computed block checksum: 0x0
Reread of blocknum=2194942, file=+CORDYS_DATA01/cordysdb/datafile/dts_cordysbpm.271.827227815. found valid data
Hex dump of (file 14, block 2194943) in trace file /u01/app/oracle/diag/rdbms/cordysdb/cordysdb1/trace/cordysdb1_ora_51329.trc
Corrupt block relative dba: 0x03a17dff (file 14, block 2194943)
Bad header found during backing up datafile
Data in bad block:
type: 40 format: 2 rdba: 0x03a17d7f
last change scn: 0x091d.361488eb seq: 0x2 flg: 0x04
spare1: 0x0 spare2: 0x0 spare3: 0x3
consistency value in tail: 0x88eb2802
check value in block header: 0xc6a4
computed block checksum: 0x0
Reread of blocknum=2194943, file=+CORDYS_DATA01/cordysdb/datafile/dts_cordysbpm.271.827227815. found valid data
Sun Nov 16 00:00:01 2014
Trace dumping is performing id= Reread of blocknum=2194941, file=+CORDYS_DATA01/cordysdb/datafile/dts_cordysbpm.271.827227815. found valid data
再次读取发现 块是可用的,这可能和虚拟环境有关。
可以参考这里 http://www.askmaclean.com/archives/fractured-block-found-during-backing-up-datafile.html
就是说rman在备份期间读取到该数据块,并在初次读取时发现该块断裂了(Fractured),但Fractured并不代表块就真的corrupted了;从告警日志看rman在初次读取发现该块Fractured后,又再次读取时发现数据块已经恢复正常(found valid data)。所以上述告警日志并代表所列出的数据块存在讹误,很有可能是该数据块所在数据文件在备份期间发生了剧烈的IO操作,当rman读取到该数据块时可能存储正在对其进行写的操作,所以rman在第一次读取时认为该快断裂了(Fractured);之后rman对该块进行reread发现”断裂”现象已不存在,而”Corrupt block”仅仅是一种假象;针对上述问题可以对表或索引进行进一步的analyze..validate操作以确保不存在坏块。
同时上述”Corrupt block误报”现象极有可能是因为在Rman备份期间个别数据文件的IO过于活跃所致(如频繁的dml操作),建议在磁盘活跃度低的时间段运行rman备份工作。
页:
[1]