通讀Oracle內核技術揭密這本書,你會發現這是一本圖文并茂的書籍,該書內容通俗易懂,講解詳細。再仔細閱讀一番,你會發現這其中文章其實都是作者親身學習和經驗的總結,總之這是一本值得推薦、值得閱讀的好書。如果你需要一份pdf格式超清電子版oracle內核技術揭密來進行閱讀的話,那就趕緊來東坡下載吧!
oracle內核技術揭密目錄
前 言
第1章 存儲結構 1
1.1 區:表空間中的基本單位 1
1.1.1 統一區大小表空間和區的使用規則 2
1.1.2 系統管理區大小 4
1.1.3 碎片:少到可以忽略的問題 7
1.2 段中塊的使用 7
1.2.1 塊中空間的使用 8
1.2.2 典型問題:堆表是有序的嗎 9
1.2.3 ASSM與L3、L2、L1塊的意義 10
1.2.4 值得注意的案例:ASSM真的能提高插入并發量嗎 12
1.2.5 段頭與Extent Map 21
1.2.6 索引范圍掃描的操作流程 24
第2章 調優排故方法論 27
2.1 調優排故的一般步驟 28
2.1.1 常見DUMP和Trace文件介紹 28
2.1.2 等待事件 29
2.1.3 各種資料視圖介紹 37
2.1.4 等待事件的注意事項 42
2.2 AWR概覽 44
2.2.1 AWR報告的注意事項 44
2.2.2 AWR類視圖 46
第3章 Buffer Cache內部原理與I/O 51
3.1 HASH鏈表 51
3.1.1 HASH鏈表與邏輯讀 52
3.1.2 Cache Buffers Chain Latch與Buffer Pin鎖 54
3.1.3 Cache Buffers Chain Latch的競爭 61
3.2 檢查點隊列鏈表 77
3.2.1 檢查點隊列 77
3.2.2 檢查點隊列與實例恢復 82
3.2.3 DBWR如何寫臟塊 89
3.2.4 如何提高DBWR的寫效率 97
3.3 LRU隊列 100
3.3.1 主LRU、輔助LRU鏈表 100
3.3.2 臟鏈表LRUW 115
3.3.3 Free Buffer Waits 132
3.3.4 誰“扣動”了DBWR的“扳機” 134
3.3.5 日志切換與寫臟塊 141
3.4 I/O總結 146
3.4.1 邏輯讀資料分析 146
3.4.2 減少邏輯讀—行的讀取 148
3.4.3 物理I/O 161
3.4.4 存儲物理I/O能力評估 162
第4章 共享池揭密 166
4.1 共享池內存結構 167
4.1.1 堆、區、Chunk與子堆 167
4.1.2 Chunk類型(x$ksmsp視圖) 170
4.1.3 freeabl、recr與LRU鏈表 171
4.1.4 Free List鏈表 173
4.1.5 保留池 177
4.1.6 SQL的內存結構:父游標、子游標 178
4.1.7 SQL的內存結構:父游標句柄 181
4.1.8 SQL的Chunk:父游標堆0和DS 183
4.1.9 SQL的Chunk:子游標句柄 186
4.1.10 SQL的Chunk:子游標堆0與堆6 187
4.1.11 SQL所占共享池內存 189
4.1.12 LRU鏈表:我的共享池大了還是小了 191
4.1.13 ORA-4031的吊詭:錯誤的報錯信息 195
4.1.14 解決ORA-4031之道:如何正確釋放內存 201
4.1.15 Session Cached Cursor與內存占用 205
4.2 語句解析和執行 209
4.2.1 SQL執行流程 209
4.2.2 內存鎖原理 211
4.2.3 Library Cache Lock/Pin 218
4.2.4 Library Cache Lock/Pin與硬解析 219
4.2.5 Library Cache Lock/Pin與軟解析、軟軟解析 226
4.2.6 NULL模式Library Cache Lock與依賴鏈 229
4.2.7 存儲過程與Library Cache Lock/Pin 229
4.2.8 斷開依賴鏈 235
4.2.9 低級內存鎖:Latch 237
4.2.10 Shared Pool Latch 239
4.3 Mutex 242
4.3.1 Mutex基本形式 242
4.3.2 Mutex獲取過程:原子指令測試并交換 245
4.3.3 Mutex獲取過程:競爭與Gets資料的更新 249
4.3.4 Mutex獲取過程:共享Mutex與獨占Mutex 250
4.3.5 獨占Mutex的獲取和釋放過程 252
4.3.6 Mutex獲取過程:Sleeps與CPU 254
4.4 Mutex與解析 261
4.4.1 Mutex類型 262
4.4.2 HASH Bucket與HASH鏈 262
4.4.3 Handle(句柄)與Library Cache Lock 262
4.4.4 HASH Table型Mutex 263
4.4.5 執行計劃與Cursor Pin 264
4.5 通過Mutex判斷解析問題 265
4.5.1 硬解析時的競爭 265
4.5.2 軟解析和軟軟解析 266
4.5.3 解決解析階段的競爭 267
4.5.4 過度軟軟解析競爭的解決 268
4.5.5 Select與執行 271
第5章 Redo調優與備份恢復原理 277
5.1 非IMU與IMU Redo格式的不同 277
5.2 解析Redo數據流 282
5.3 IMU與非IMU相關的Redo Latch 287
5.4 Redo Allocation Latch 288
5.5 Log Buffer空間的使用 290
5.6 LGWR與Log File Sync和Log File Parallel Write 297
5.7 IMU什么情況下被使用 300
第6章 UNDO 302
6.1 事務基本信息 302
6.2 回滾段空間重用規則 307
6.2.1 UNDO塊的SEQ值 308
6.2.2 UNDO段的Extend 310
6.2.3 Steal Undo Extent:詭異的UNDO空間不足問題 311
6.2.4 回滾空間重用機制:UNDO塊重用規則 313
第7章 ASM 317
7.1 ASM文件格式 317
7.1.1 ASM文件 317
7.1.2 使用kfed挖掘ASM文件格式 319
7.2 AU與條帶 328
7.2.1 粗粒度不可調條帶 329
7.2.2 細粒度可調條帶 329
7.2.3 AU與條帶的作用 331
7.2.4 DG中盤數量對性能的影響 332
7.2.5 最大I/O與最小I/O 333
7.2.6 數據分布對性能的影響 334
7.2.7 案例精選:奇怪的IO問題 335
7.2.8 大AU和小AU性能對比 340
7.2.9 AU與條帶總結 341
7.2.10 OLTP與大條帶 342
附錄 HASH算法簡單介紹 344
oracle內核技術揭密內容簡介
本書是首本國內作者深入剖析Oracle原理的技術書籍。雖以內部原理為主線,但又不乏很多實際的應用案例,希望讀者可以將學到的原理與實際應用相結合,提高對Oracle的運維能力。本書第1章主要說明一個方法論問題,總攬了Oracle調優、排故的一般方法。在之后的章節中將會使用這章所介紹的方法來解決問題,并且會進一步分析調優排故的技巧。從第2章到第8章,分門別類地對Oracle各個體系結構和原理進行了逐層深入的介紹,這些章節的內容主要分為兩部分:知識體系及原理介紹和相關典型案例分析。這些內容和第1章是相互呼應的。文中結合性能調整、診斷案例實踐,將Oracle知識全面、系統、深入地展現給讀者,旨在幫助讀者建立一套自己的調優、排故模型。第9章作為特別深入的一章,將會講述在無源碼情況下深入研究Oracle的方法,這在國內外還較少見。這一章內容只是一個嘗試,如果讀者有興趣,將來可以考慮再出一本書專門講述這方面內容的圖書。
oracle內核技術揭密電子版內容截圖
- PC官方版
- 安卓官方手機版
- IOS官方手機版