dsi401_block structure之(二)
dsi401_block structure之(二)
什麼是壞損壞
1,oracle讀寫塊(buffer or disk),肯定會進行一致性檢查
2,一致性檢查內容:
1,block version --refer to block dump
2,cache中的dba和block buffer中的dba比較
3,是否開啟db_block_checking and db_block_checksum
3,如何檢查上述內容呢
1,基於塊頭的scnbase + seq
2,基於塊尾的scnbase + seq
3,block type
小結:所在block dump有個block header,block tail(想想tail的構成)
4,塊損壞的一些示例:
ora-600(4519):cache layer block type is correct
5,block corrupation型別:
1,介質損壞:
表現:scn=0
2,邏輯或軟體損壞;
表現:scn=xxx
seq=ub1maxval
注:xxx即最高或最大scn作的變化
這樣會導致重構整個資料塊
3,兩種損壞型別型別的後果:
1,media corruption:
從磁碟讀取後此塊完全無用
2,soft corrupt :
發現塊不一致性了標記下此塊
6,ora-1578
1,表明是硬體問題
2,如果多時出現且引數相同,可能這個資料塊物理損壞了
3,如多次出現但引數不同,可能硬體出故障了
檢查下:1,memory
2,io子系統的控制器是否正常
如果可以得到出故障資料塊的編號
1,dd dump
2,如果執行多次dd報錯,就要檢查下io子系統或者控制器是否出故障了
7,ora-600
1,表現:ora-[600] [kcbzpb-1],[d],[kind],[chk],[],[]
2,各引數含義:
1,d --block number
kind --損壞型別
chk ---checksum flag
kcbzpb-1 --內部錯誤,要參考source code
3,此報錯發生於資料塊在記憶體中損壞
即儲存在記憶體時破壞了塊頭和塊尾,這是它產生的唯一方法
8,處理壞塊途徑
1,檢查alert或trace file
2,使用診斷工具確定損壞型別
3,dump確認到底出了什麼問題
4,執行多次與損壞塊相關的業務,是否一直出現
5,如必要恢復壞塊
如發現一個壞塊,可能出現了多外壞塊,用dbverify檢查出錯的資料檔案
用dd和od -x分析壞塊的產生原因
對壞塊相關的redo log進行dump,確認何時資料塊的損壞開始時間
如出現壞塊,修復硬體後,必須進行介質恢復
與壞塊相關的硬體故障型別:
1,io硬體或韌體
2,os io或緩衝
3,memory or paging
4,disk
dbverify工具
1,只能驗證data file,而非redo file
2,檢查資料塊一致性
3,dbv會對出問題的連續重2次,第2次才會標記為壞塊;如2次匹配,則標記為influx block
4,influx block為split block;
5,split block即:dbv首次讀取一個塊,爾後dbwr又寫入了一個此塊的新版本;導致
資料塊部分為老,部人為新;因此塊頭和尾不匹配
6,所以可能還是會出現壞塊在hwm之上
7,logical corruption:即驗證block header and block tail is match
analyze command
1,logical block check
2,不會標記它為soft corrupt,僅報告他們
3,驗證表和索引
4,analyze table x validate structure cascade;--cascade option
analyze index x validte structure;
analyze cluster xx validate structure;
多次執行analyze
analyze table x partition (p1) validate structure into invalid_rows;
5,對於assm方式,hwm之下的unformatted block不會包括(refer to dsi 402 for detail)
診斷事件
1,event='10231 trace name context forever,level 10';--based full table span,skip corrupt block
2,event='10233 trace name context forever,level 10';--base index range scan ,skip corrupt block
3,event 10232:dump corrupted block in a trace file
4,event 10210 :force logical block checking,只要塊變化
5,event 10211: 基於index block的10210
6,event 10212:基於cluster block的10210
7,10210,10211,10212的工作內容如下:
1,free slot list結構
2,資料塊內的row位置
3,重疊的row position
4,itl的lock count
5,這些事件很費資源,不用馬上關閉
flash freeze
1,oracle9i新特性,可以配置產生某個錯誤時觸發一個動作
2,可以進一步分析問題的原因
3,event='600 flashfreeze after 1 times on error ksuwaitsysevent_1'
--發生上述錯誤一次觸發flash freeze
4,--如果pmon產生1301 error
event='600 flashfreeze on error 1301,proc=pmon'
5,--如果發生事件10295,凍結所有的後臺程式oracle
event='10295 flashfreeze,proc=bgs,instance=single'
--不支援rac
db_block_checking
1,with it replace above event from 10210 to 10212
dbms_repair package
bbed
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-757732/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- dsi401_block structure(一)BloCStruct
- java高階用法之:JNA中的StructureJavaStruct
- data structureStruct
- Valuation StructureStruct
- OpenAPI Basic StructureAPIStruct
- VALIDATE STRUCTUREStruct
- Data Structure_樹Struct
- sqrt-data-structureStruct
- Data block Structure and Row Piece Structure_20091209BloCStruct
- idea--Project StructureIdeaProjectStruct
- SAP Spartacus Reference App StructureAPPStruct
- 1.2 Physiacel Structure of Database ClusterStructDatabase
- Idea Project Structure配置IdeaProjectStruct
- 學習VALIDATE STRUCTUREStruct
- buffer cache logical structure!Struct
- Program Interface Structure (135)Struct
- C#程式設計利器之二:結構與列舉(Structure and enumeration)C#程式設計Struct
- 1.1 Logical Structure of Database ClusterStructDatabase
- index branch and leaf block structure(轉)IndexBloCStruct
- 【MySQL】Could not initialize master info structureMySqlASTStruct
- Structure of the Data Dictionary : Base Tables (258)Struct
- The Internal Structure of Indexes (208)StructIndex
- Half-Edge-Mesh-Data-StructureStruct
- SAP ABAP Append structure 介紹APPStruct
- data structure online videoStructIDE
- Oracle Memory Structure 1. Overview And ManagementOracleStructView
- Disjoint set(並查集) data structure並查集Struct
- oracle10g data block structureOracleBloCStruct
- 什麼是 SAP ABAP 的 include structureStruct
- 【intellij idea】Project Structure 講解IntelliJIdeaProjectStruct
- Enterprise Structure ConfigurationStruct
- SAP Organizational Structure Overview(組織架構)StructView架構
- Advantages of B-tree Structure (212)Struct
- Structure of Linux Kernel Device Driver(Part II)StructLinuxdev
- DrawERD makes it easy to visualize your database structure.DatabaseStruct
- Composition and Structure of an INVOIC IDoc in SAP ERPStruct
- ABAP include structure 的一個具體用法Struct
- Structure of the Data Dictionary : User-Accessible Views (259)StructView