Oracle資料庫問題解決方案和故障排除手冊

Oracle資料庫問題解決方案和故障排除手冊

《Oracle資料庫問題解決方案和故障排除手冊》是2018年電子工業出版社出版的圖書,作者是ariq Farooq,Mike Ault,Paulo Portugal。

基本介紹

  • 中文名:Oracle資料庫問題解決方案和故障排除手冊 
  • 作者:ariq Farooq,Mike Ault,Paulo Portugal
  • 譯者:戴明明 臧強磊 周捷
  • 出版社:電子工業出版社
  • 出版時間:2018年1月1日
  • 頁數:420 頁
  • 定價:99 元
  • 開本:16 開
  • ISBN: 9787121331343
內容簡介,目錄,作者簡介,

內容簡介

《Oracle資料庫問題解決方案和故障排除手冊》提供了全面、實用的建議,以保證在複雜的生產環境中,能可靠且高效地運行Oracle 資料庫。
七位主要的Oracle 專家對Oracle 12c、11g 和其他最近版本的Oracle 資料庫匯集了一系列經過驗證的解決方案、實踐的例子以及循序漸進的技巧。每一個解決方案都是精心設計的,以幫助有經驗的Oracle DBA和DMA 儘可能快地理解和修復嚴重的問題。
《Oracle資料庫問題解決方案和故障排除手冊》不僅涵蓋了LOB 段、undo 表空間、高GC 緩衝區等待事件、糟糕的查詢回響時間、閂鎖爭用、索引、XA 分散式事務、RMAN 備份/ 恢復等內容,還深入地講解了DDL 最佳化、VLDB 調優、資料庫取證、自適應游標共享、數據泵、數據遷移、SSD、索引等內容,並介紹了如何解決Oracle RAC 問題。

目錄

第1 章 LOB 段性能的診斷與調優 1
1.1 LOB 數據類型的介紹 1
1.1.1 解決LOB 問題:一個真實的案例 2
1.1.2 另一個真實案例:HW 分析 4
1.1.3 BASICFILE LOB :更完美的解決方案 7
1.2 BASICFILE 與SECUREFILE LOB 7
1.2.1 LOB 新舊類型的差異 8
1.2.2 遷移BASICFILE LOB 到SECUREFILE LOB 10
1.3 PCTFREE 對LOB 的影響 12
1.4 解決糟糕的INSERT 性能 15
1.5 總結 15
第2 章 處理undo 表空間損壞 16
2.1 undo 管理概述 16
2.1.1 UNDO_RETENTION 的重要性 16
2.1.2 最佳化UNDO_RETENTION 17
2.2 DTP、XA 和回滾段 18
2.3 undo 表空間損壞的恢復 20
2.3.1 預防、檢測和修復損壞 20
2.3.2 處理記憶體損壞 21
2.3.3 處理邏輯損壞 24
2.3.4 解決介質損壞 24
2.4 總結 27
第3 章 處理全局快取緩衝區忙等待事件 28
3.1 緩衝區忙等待事件概述 28
3.2 使用ORAchk 工具 29
3.2.1 安裝ORAchk 29
3.2.2 ORAchk 執行結果:示例輸出 30
3.3 查找GC 緩衝區忙等待事件 32
3.3.1 用ADDM 查找事件的信息 33
3.3.2 用AWR 查找等待事件的信息 33
3.3.3 用ASH 查找等待事件的信息 35
3.4 查找GC 緩衝區忙等待事件的原因 36
3.4.1 使用ASH 視圖查找等待會話 36
3.4.2 快速查找性能瓶頸 38
3.5 解決GC 緩衝區忙等待 40
3.6 總結 41
第4 章 自適應游標共享 42
4.1 ACS 工作算法 42
4.1.1 綁定敏感與範圍謂詞 43
4.1.2 綁定敏感與等式謂詞和直方圖 45
4.1.3 綁定敏感與分區鍵 46
4.2 ACS 的使用 48
4.2.1 監控ACS 的綁定感知 51
4.2.2 BUCKET_ID 和COUNT 的關係 52
4.2.3 標記游標為綁定感知 55
4.3 游標綁定感知 61
4.4 一個真實案例 64
4.5 總結 69
第5 章 使用SPM 穩定查詢回響時間 70
5.1 入門指南 70
5.2 創建SQL 計畫基線 73
5.2.1 自動捕獲計畫 73
5.2.2 從游標快取載入計畫 76
5.3 偽造基線 77
5.4 Oracle 最佳化器和SPM 的互動 81
5.4.1 當CBO 計畫與SQL 計畫基線匹配時 82
5.4.2 當CBO 計畫與SQL 計畫基線不匹配時 84
5.4.3 當SQL 計畫基線不可複製時 89
5.5 SQL 計畫基線的複製性 93
5.5.1 重命名索引 93
5.5.2 修改索引類型 95
5.5.3 向索引中添加尾列 96
5.5.4 反向索引 97
5.6 NLS_SORT 與SQL 計畫基線的複製性 98
5.7 ALL_ROWS 與FIRST_ROWS 100
5.8 自適應游標共享與SPM 104
5.8.1 Oracle 11.2.0.3.0 中的ACS 和SPM 105
5.8.2 Oracle 12.1.0.1.0 中的ACS 和SPM 109
5.9 總結 112
第6 章 DDL 最佳化技巧和技術 114
6.1 DDL 最佳化的概念 114
6.2 DDL 最佳化的機制 117
6.2.1 表基數估算 117
6.2.2 虛擬列中的C_DDL 列 119
6.2.3 列組擴展中的C_DDL 列 120
6.2.4 C_DDL 的默認值發生變化時 122
6.2.5 C_DDL 列和索引 124
6.2.6 空列的DDL 最佳化 126
6.3 總結 130
第7 章 管理、最佳化、調整大型資料庫 131
7.1 大型資料庫概述 131
7.2 最佳化基本配置 132
7.2.1 資料庫倉庫模板 132
7.2.2 最佳化數據塊大小 133
7.2.3 大檔案表空間 134
7.2.4 調整SGA 和PGA 135
7.2.5 臨時表空間組 135
7.2.6 數據分區 136
7.2.7 本地分區索引和全局分區索引 136
7.2.8 數據壓縮 137
7.2.9 表壓縮 137
7.2.10 熱圖和自動數據最佳化 137
7.2.11 高級索引分區壓縮 138
7.3 大型資料庫性能調整的原則 139
7.3.1 真實的案例 139
7.3.2 控制索引對數據載入的影響 140
7.3.3 資源利用率的最大化 141
7.4 收集統計信息 142
7.4.1 增量統計信息摘要 142
7.4.2 並發收集統計信息 144
7.4.3 設定ESTIMATE_PERCENT 的值 145
7.5 備份與恢復的最佳實踐 145
7.5.1 Exadata 解決方案 146
7.5.2 利用Data Guard 環境 147
7.6 總結 147
第8 章 RMAN 備份恢復最佳實踐 148
8.1 完美的備份恢復計畫 148
8.2 概述 149
8.3 資料庫備份策略的技巧 149
8.3.1 完全備份和增量備份 150
8.3.2 壓縮備份 150
8.3.3 增量備份 151
8.3.4 快速增量備份 151
8.3.5 Oracle 閃回技術之回退 152
8.3.6 基於磁碟的備份解決方案 153
8.3.7 增量更新的鏡像副本 153
8.4 驗證RMAN 備份 159
8.5 備份的最佳化與調整 160
8.6 RAC 集群下的RMAN 162
8.7 恢複目錄 163
8.8 恢復策略 164
8.9 數據恢復顧問 165
8.10 總結 166
第9 章 使用AWR 分析最佳化資料庫(一) 167
9.1 什麼是AWR 167
9.2 知道要查找什麼 168
9.3 報告頭部信息 169
9.3.1 負載狀況 171
9.3.2 實例效率 171
9.3.3 共享池記憶體 172
9.3.4 等待事件 172
9.3.5 平均負載 175
9.3.6 實例CPU 175
9.3.7 記憶體統計數據 176
9.4 RAC 特有的頁面 176
9.4.1 RAC 統計數據 177
9.4.2 全局快取負載統計數據 177
9.4.3 全局快取和佇列服務 177
9.4.4 集群互連 178
9.5 時間模型統計 179
9.6 作業系統統計數據 180
9.6.1 前台等待事件 181
9.6.2 後台等待事件 182
9.6.3 等待事件直方圖 183
9.6.4 服務相關統計數據 184
9.7 SQL 章節 185
9.7.1 總運行時間 185
9.7.2 總CPU 時間 185
9.7.3 總緩衝區獲取 186
9.7.4 總磁碟讀 186
9.7.5 總執行次數 186
9.7.6 解析調用 186
9.7.7 可共享記憶體 187
9.7.8 版本數 187
9.7.9 集群等待時間 187
9.8 實例活動統計 188
9.8.1 一致性讀統計數據 191
9.8.2 數據塊讀統計數據 191
9.8.3 髒塊統計 191
9.8.4 佇列統計 191
9.8.5 執行計數 191
9.8.6 空閒緩衝區統計 192
9.8.7 全局快取統計 192
9.8.8 索引掃描統計數據 192
9.8.9 葉子節點統計數據 193
9.8.10 打開的游標 193
9.8.11 解析統計數據 193
9.8.12 物理讀寫統計數據 193
9.8.13 遞歸統計數據 195
9.8.14 重做相關的統計數據 195
9.8.15 會話游標統計數據 196
9.8.16 排序統計數據 196
9.8.17 髒佇列長度匯總 196
9.8.18 表獲取統計數據 197
9.8.19 事務回滾 197
9.8.20 撤銷更改矢量統計 197
9.8.21 用戶統計數據 198
9.8.22 工作區統計數據 198
9.8.23 實例活動統計——絕對值 198
9.8.24 實例活動統計——執行緒活動 199
9.9 總結 199
第10 章 使用AWR 分析最佳化資料庫(二) 200
10.1 表空間I/O 統計數據 200
10.2 緩衝池 202
10.2.1 緩衝池統計數據 203
10.2.2 實例恢復統計數據 203
10.2.3 緩衝池建議部分 204
10.3 PGA 統計數據 204
10.3.1 PGA 匯總 206
10.3.2 PGA 總目標統計數據 206
10.3.3 PGA 總目標直方圖 206
10.3.4 PGA 記憶體建議 208
10.4 共享池統計數據 208
10.5 其他建議 209
10.5.1 SGA 目標建議 210
10.5.2 流池建議 210
10.5.3 Java 池建議 211
10.6 緩衝區等待統計數據 211
10.7 佇列統計數據 212
10.8 撤銷段統計數據 214
10.9 閂鎖統計數據 215
10.9.1 閂鎖活動 216
10.9.2 閂鎖休眠分類 217
10.9.3 閂鎖和自旋數 217
10.9.4 閂鎖丟失源 218
10.9.5 互斥鎖休眠匯總 218
10.9.6 父類和子類閂鎖 218
10.10 段訪問區 218
10.11 庫快取活動部分 220
10.12 動態記憶體組件部分 223
10.13 進程記憶體部分 224
10.13.1 進程記憶體匯總 226
10.13.2 SGA 記憶體匯總 226
10.13.3 SGA 分類和差異 226
10.14 流組件部分 226
10.15 資源限制統計數據 228
10.16 初始化參數的改變 228
10.17 全局佇列和其他RAC 部分 229
10.17.1 全局佇列統計數據 233
10.17.2 全局CR 服務統計數據 233
10.17.3 全局當前服務統計數據 233
10.17.4 全局快取傳輸統計數據 233
10.17.5 全局快取傳輸時間 233
10.17.6 全局快取傳輸 233
10.17.7 全局快取時間 234
10.17.8 互連ping 延遲統計數據 234
10.17.9 客戶端的互連吞吐量 234
10.17.10 互聯設備統計數據 234
10.18 總結 234
第11 章 RAC 的故障診斷 236
11.1 RAC 的故障診斷和調優 236
11.1.1 ORAchk 工具 237
11.1.2 TFA 收集器 237
11.1.3 自動診斷庫 237
11.1.4 告警和跟蹤日誌檔案 237
11.2 運轉良好的RAC 生態系統 239
11.2.1 最高可用性架構 239
11.2.2 最佳化和高效的RAC 資料庫 240
11.2.3 基於OEM 12C 的RAC 故障診斷 241
11.2.4 故障診斷的程式和命令 242
11.3 總結 247
第12 章 利用SQL 顧問來分析和修復SQL 問題 248
12.1 OEM 12c :SQL 顧問首頁 248
12.2 SQL 調優顧問 249
12.2.1 在OEM 12c 中運行SQL 調優顧問 250
12.2.2 在SQL*Plus 中手動運行SQL 調優顧問 253
12.3 SQL 訪問顧問 253
12.3.1 在OEM 12c 中運行SQL 訪問顧問 254
12.3.2 在SQL*Plus 中手動運行SQL 訪問顧問 257
12.4 SQL 修復顧問 258
12.5 SQL 性能分析器 259
12.6 總結 260
第13 章 使用數據泵遷移數據和對象 261
13.1 使用數據泵 261
13.1.1 複製對象 262
13.1.2 數據泵模式 263
13.2 處理私有和公共對象 263
13.2.1 保存和恢複數據庫連結 264
13.2.2 導出公共資料庫連結和同義詞 264
13.2.3 驗證導出的轉儲檔案內容 265
13.3 查找有效的INCLUDE 和EXCLUDE 值 265
13.4 導出數據子集 267
13.5 修改對象屬性 269
13.5.1 將分區表導入為非分區表 269
13.5.2 將表分區導入為單獨的表 269
13.5.3 禁止數據 270
13.5.4 重命名表或使用不同的表空間 270
13.5.5 使用默認存儲參數 270
13.5.6 導入期間調整表空間大小 271
13.5.7 合併多個表空間 271
13.6 通過PL/SQL API 使用Data Pump 273
13.7 監控和修改資源 274
13.8 提升性能 275
13.9 升級資料庫 276
13.10 總結 277
第14 章 資料庫快速遷移數據的策略 278
14.1 為什麼要遷移 278
14.2 確定最好的策略 279
14.2.1 實時與準實時遷移 279
14.2.2 接受唯讀 279
14.2.3 可逆性 280
14.3 考慮遷移什麼數據 280
14.4 數據遷移的方法 281
14.4.1 事務性捕獲遷移方法 281
14.4.2 非事務性遷移方法 283
14.4.3 其他遷移方法 295
14.5 總結 301
第15 章 臨時檔案I/O 問題的診斷和恢復 302
15.1 臨時表空間概述 302
15.1.1 唯讀資料庫 303
15.1.2 本地管理的臨時表空間 303
15.1.3 臨時表空間組 303
15.1.4 全局臨時表 304
15.2 解決TEMPFILE I/O 等待 307
15.2.1 過小的PGA 307
15.2.2 不恰當的TEMPFILE 擴展區大小 311
15.2.3 不恰當地使用GTT 312
15.3 總結 312
第16 章 處理閂鎖和互斥鎖爭用 313
16.1 閂鎖和互斥鎖架構概述 313
16.1.1 什麼是閂鎖 314
16.1.2 什麼是互斥鎖 315
16.1.3 閂鎖和互斥鎖的內部結構 315
16.2 檢測閂鎖和互斥鎖爭用 316
16.2.1 識別獨特的閂鎖 317
16.2.2 查找段和SQL 語句 318
16.3 閂鎖和互斥鎖場景 320
16.3.1 庫快取互斥鎖等待 320
16.3.2 library cache pin 322
16.3.3 共享池閂鎖 322
16.3.4 快取緩衝區鏈閂鎖 323
16.3.5 其他的閂鎖場景 325
16.4 棘手的閂鎖爭用 326
16.5 總結 328
第17 章 使用SSD 解決I/O 瓶頸 329
17.1 磁碟技術:SSD 與 HDD 329
17.1.1 固態快閃記憶體盤的崛起 330
17.1.2 SSD 快閃記憶體的延遲 331
17.1.3 SSD 的經濟性 332
17.1.4 SLC、MLC 和TLC 333
17.1.5 寫性能與壽命 334
17.1.6 垃圾回收和磨損均衡 334
17.1.7 SATA 與 PCIe SSD 336
17.1.8 在Oracle 資料庫中使用SSD 336
17.2 Oracle 資料庫的快閃記憶體快取 337
17.2.1 空閒緩衝區等待 337
17.2.2 配置和監控DBFC 339
17.2.3 使用FLASH_CACHE 子句 340
17.2.4 快閃記憶體快取的性能統計數據 341
17.3 比較SSD 的部署選擇 342
17.3.1 索引讀 343
17.3.2 OLTP 上的讀/ 寫負載 344
17.3.3 全表掃描性能 344
17.3.4 SSD 本地快取和全表掃描 345
17.3.5 磁碟排序和散列操作 346
17.3.6 重做日誌的最佳化 349
17.4 存儲分層 349
17.5 快閃記憶體和Exadata 353
17.6 總結 357
第18 章 為最佳性能設計和監控索引 359
18.1 索引的類型 359
18.1.1 B 樹索引 359
18.1.2 點陣圖索引 362
18.1.3 分區索引 364
18.1.4 其他索引類型 366
18.2 同一列上的多個索引 368
18.3 索引的性能問題 369
18.3.1 索引統計信息 369
18.3.2 高集群因子的影響 372
18.3.3 索引操作的注意事項 373
18.3.4 隱藏非選擇的索引 374
18.3.5 RAC 資料庫中的索引性能問題 375
18.4 總結 377
第19 章 使用SQLT 提升查詢性能 379
19.1 安裝SQLT 379
19.2 使用XTRACT 方法 380
19.3 使用XECUTE 方法 381
19.4 其他SQLT 方法 384
19.5 一個真實的案例 385
19.6 總結 386
第20 章 處理XA 分散式事務的問題 387
20.1 修復常見的分散式事務問題 387
20.2 修復幽靈分散式事務 388
20.2.1 信息存在,但事務不在 389
20.2.2 ORA-1591 沒有對應的信息 389
20.2.3 提交或回滾之後事務掛起 391
20.3 監控分散式事務 393
20.4 總結 395

作者簡介

Tariq Farooq 是一名Oracle 技術專家、架構師和問題解決者,在世界上最大的一些組織得非常複雜的環境中從事各種Oracle 技術工作已經超過24 年。
Mike Ault 於1980 年開始使用計算機,自1990 年以來,Mike 作為顧問,一直在使用Oracle 的行業工作。
Paulo Portugal 作為Oracle DBA,有超過15 年的IT 經驗。他是Oracle 11g OCM, Oracle 9i、 10g、 11g 和12c OCP,Oracle 10g 和11g 認證專家,Oracle DBA 10g 認證Linux 管理員,Oracle Exadata認證實施專家。
譯者簡介
戴明明,網名:Dave,Oracle ACE-A,ACOUG 核心成員,浙江套用中間件與資料庫用戶組核心成員,CSDN 認證專家。9年DBA經驗,在Oracle 高可用方面有一定的經驗積累。 擅長Oracle資料庫診斷、性能調優,熱衷於Oracle 技術的研究與分享。曾在CSDN部落格撰寫部落格1000餘篇(http://blog.csdn.net/tianlesoftware)。2012年度CSDN部落格十大部落格之星。

相關詞條

熱門詞條

聯絡我們