DB2高級管理、系統設計與診斷案例(第3版)
作者:牛新莊
定價:98元
印次:3-1
ISBN:9787302481171
出版日期:2017.09.01
印刷日期:2017.09.08
印次:3-1
ISBN:9787302481171
出版日期:2017.09.01
印刷日期:2017.09.08
本書從DB2進程和內部執行緒結構入手,介紹代理程式工作機制、記憶體體系結構、存儲體系結構等。在此基礎上詳解了DB2資料庫的高級功能,包括數據分區、高級壓縮功能、安全特性等,並系統地介紹了OLTP和OLAP系統的設計方案和管理技術、高可用和容災方案以及集群技術,其中包含了HADR、DPF和pureScale技術,以及同城雙活GDPC(地理上分離的pureScale集群)技術。還介紹了DB2各種監控和診斷方法,通過精選的診斷案例使讀者在學習知識的同時積累了實踐經驗。
目錄
第1章DB2體系結構1
1.1DB2進程體系結構1
1.1.1DB2進程技術模型2
1.1.2與作業系統相關的進程3
1.1.3與實例相關的進程和執行緒5
1.1.4與資料庫相關的進程和執行緒6
1.1.5與應用程式相關的進程9
1.1.6監控EDU運行的SQL語句10
1.1.7收集進程/執行緒堆疊信息12
1.2代理程式通信13
1.2.1代理程式概述13
1.2.2代理程式相關配置參數13
1.2.3應用程式、代理程式和事務16
1.2.4代理和連線的常見問題與最佳化17
1.3實用程式相關進程21
1.3.1LOAD相關進程21
1.3.2備份/恢復相關進程26
1.4DB2記憶體體系結構29
1.4.1實例共享記憶體30
1.4.2資料庫共享記憶體31
1.4.3應用程式共享記憶體36
1.4.4代理私有記憶體38
1.4.5代理程式與應用程式之間通信時的記憶體40
1.4.6共享記憶體與私有記憶體40
1.5記憶體集、記憶體池和記憶體塊42
1.5.1實例級記憶體集43
1.5.2跟蹤記憶體使用46
1.5.3定位記憶體泄漏48
1.5.4資料庫級記憶體集49
1.6記憶體自動調優51
1.7記憶體案例分析53
1.8DB2存儲內部結構55
1.8.1DB2存儲層次結構55
1.8.2表空間存儲結構57
1.8.3SMS表空間的存儲結構57
1.8.4DMS表空間的頭部信息57
1.8.5DMS表空間映射58
1.8.6表空間的高水位標記59
1.8.7RID格式59
1.8.8索引葉的內部結構60
1.9資料庫物理設計61
1.9.1表空間容器的放置原則61
1.9.2資料庫物理設計原則61
1.10資料庫邏輯設計62
1.10.1緩衝池設計原則62
1.10.2表空間設計原則67
1.10.3索引設計原則77
1.11本章小結79
第2章DB2表的高級特性81
2.1表分區81
2.1.1定義81
2.1.2優點82
2.1.3分區表的基本用法83
2.1.4分區表的管理96
2.1.5分區重組103
2.1.6分區表detach的常見問題104
2.2多維群集(MDC)及套用
案例107
2.2.1創建MDC表107
2.2.2MDC測試案例108
2.2.3MDC考慮110
2.3表分區和多維集群表的使用110
2.4物化查詢表及套用案例114
2.4.1物化查詢表(MQT)114
2.4.2MQT總結117
2.5MDC、資料庫分區、MQT和
表分區配合使用118
2.6行壓縮129
2.6.1概念129
2.6.2啟用或禁用表的壓縮功能131
2.6.3創建數據字典133
2.6.4評估壓縮空間135
2.6.5檢查壓縮狀態135
2.6.6行壓縮套用案例136
2.6.7索引壓縮及套用案例145
2.7本章小結148
第3章資料庫安全149
3.1DB2安全機制概述150
3.2認證(authentication)152
3.2.1什麼時候進行DB2身份
認證152
3.2.2DB2身份認證類型153
3.3許可權(authorization)158
3.3.1許可權層次158
3.3.2實例級許可權159
3.3.3資料庫級許可權164
3.4特權(privilege)167
3.4.1特權層次結構167
3.4.2授予特權170
3.4.3撤銷特權172
3.4.4顯式特權/隱式特權/間接
特權174
3.4.5靜態和動態SQL特權考慮
因素177
3.4.6維護特權/許可權179
3.5某銀行安全規劃案例181
3.6執行安全審計(db2audit)183
3.6.1實例級審計183
3.6.2資料庫級審計188
3.7基於標籤的訪問控制(LBAC)
及案例191
3.8本章小結198
第4章OLTP系統設計與管理199
4.1基礎環境設計199
4.1.1硬體環境設計200
4.1.2作業系統設計200
4.1.3實例和資料庫參數設定200
4.2物理結構設計202
4.2.1DB2頁大小的選擇202
4.2.2表空間類型的選擇203
4.2.3頁大小、表大小和表空間
大小203
4.2.4表空間參數的設定203
4.2.5資料庫BUFFERPOOL的創建
設定205
4.3資料庫對象的設計原則206
4.3.1表相關的設計原則206
4.3.2性能相關的設計原則213
4.4代碼開發的基本原則215
4.4.1命名規範215
4.4.2書寫規範216
4.4.3開發規範216
4.5本章小結221
第5章OLAP系統設計與管理223
5.1DB2DPF多分區基本架構和
相關概念224
5.1.1DB2DPF基本架構224
5.1.2DB2DPF數據的分布鍵
以及數據傾斜問題224
5.1.3DB2DPF資料庫的
並行I/O226
5.1.4DB2DPF資料庫的擴展性227
5.2DB2DPF多分區套用228
5.3OLAP高性能設計:DPF+TP+
MDC231
5.4配置DB2DPF多分區環境233
5.4.1DB2DPF安裝準備233
5.4.2DB2DPF環境搭建235
5.4.3創建表空間和緩衝池238
5.5DB2DPF運維操作實踐239
5.5.1DB2DPF分區節點的擴展
和刪除實踐239
5.5.2DB2DPF數據均衡實踐240
5.5.3loadcopyyes以及相應的
前滾方法242
5.5.4多分區load失敗處理245
5.6OLAP系統設計與套用開發
最佳實踐247
5.6.1表的設計最佳實踐247
5.6.2數據訪問方式最佳實踐248
5.6.3複製表的定義249
5.7DB2列組織表250
5.7.1DB2列組織表介紹250
5.7.2DB2列組織表套用場景和
環境配置251
5.7.3創建列組織表253
5.7.4向列組織表裝入(LOAD)
數據255
5.7.5列組織表的訪問計畫256
5.8本章小結257
第6章高可用與災備259
6.1HADR的設計理念260
6.1.1什麼是高可用性260
6.1.2HADR的原理261
6.1.3HADR的日誌處理模式262
6.1.4HADR的限制264
6.2HADR典型場景的搭建265
6.2.1對基礎環境的要求265
6.2.2HADR的配置參數265
6.2.3複製PRIMARY資料庫267
6.2.4啟動STANDBY267
6.2.5啟動PRIMARY268
6.3HADR的維護268
6.3.1監控HADR268
6.3.2HADR的切換方式273
6.3.3切換後對套用產生的影響273
6.3.4HADR狀態274
6.3.5HADR異常狀態的處理275
6.4HADR性能調優275
6.4.1接收緩衝275
6.4.2網路相關276
6.4.3內部參數276
6.4.4表和表空間的調整276
6.5HADR高可用案例分享277
6.5.1HADR結合PowerHA277
6.5.2HADR結合TSA282
第7章DB2集群與同城雙活287
7.1DB2集群介紹288
7.2DB2集群的搭建289
7.2.1系統物理架構289
7.2.2系統環境準備291
7.2.3配置共享存儲291
7.2.4配置IOCP292
7.2.5配置RoCE萬兆網路環境293
7.2.6檢查檔案系統的空間296
7.2.7配置時鐘同步服務296
7.2.8配置用戶名和用戶組299
7.2.9配置用戶限制299
7.2.10配置集群互信300
7.2.11執行安裝檢查301
7.2.12安裝DB2pureScale軟體302
7.2.13安裝DB2許可303
7.2.14創建實例304
7.2.15配置實例305
7.2.16創建GPFS檔案系統307
7.2.17創建資料庫307
7.3DB2集群的維護307
7.3.1實例的啟停307
7.3.2集群的管理308
7.3.3故障處理313
7.4DB2集群設計調優315
7.4.1使用小的pagesize316
7.4.2使用大的extentsize316
7.4.3使用lobinline方法316
7.4.4使用大的pctfree設定316
7.4.5巧用CURRENTMEMBER316
7.4.6巧用隨機索引317
7.5同城雙活集群介紹318
7.6DB2集群異地容災320
7.6.1DB2集群異地容災架構320
7.6.2ReplayMember概念320
7.6.3DB2集群異地容災同步
模式321
7.6.4DB2集群異地容災切換
方式322
7.6.5DB2集群異地容災客戶端
連線方式322
7.6.6DB2集群異地容災架構的
高可用性323
7.6.7DB2集群異地容災特性323
7.7本章小結323
第8章DB2高級監控325
8.1利用表函式監控325
8.2監控指標和案例329
8.2.1一些常用的監控指標和
語句329
8.2.2編寫腳本以獲取監控信息335
8.3db2pd及監控案例337
8.3.1db2pd概述337
8.3.2db2pd監控案例337
8.4事件監視器及監控案例349
8.4.1事件監視器的創建方法和
步驟350
8.4.2事件監控器案例351
8.4.3編寫腳本從事件監控器中
獲取監控信息354
8.5db2mtrk及監控案例356
8.6本章小結358
第9章DB2故障診斷359
9.1DB2故障診斷機制359
9.1.1故障診斷相關檔案359
9.1.2設定故障診斷級別368
9.2深入講解故障診斷檔案373
9.2.1解釋管理通知日誌檔案
條目373
9.2.2解釋診斷日誌檔案條目375
9.3故障診斷工具377
9.3.1使用db2support收集環境
信息377
9.3.2db2ls和db2level378
9.3.3使用db2diag分析
db2diag.log檔案380
9.3.4db2pd和db2trc383
9.3.5DB2內部返回碼385
9.4故障診斷分析流程387
9.4.1故障診斷流程387
9.4.2結合系統事件判斷390
9.4.3結合系統運行狀況診斷390
9.5案例分析391
9.6本章小結395
第10章DB2案例精選397
10.1實例常見問題和診斷案例397
10.1.1實例無法啟動問題總結397
10.1.2實例無法正常終止398
10.1.3實例目錄誤刪除398
10.1.4實例崩潰問題399
10.2資料庫常見問題總結399
10.2.1資料庫日誌空間滿
SQL0964C錯誤399
10.2.2資料庫時區和時間400
10.2.3中文亂碼和代碼頁轉換401
10.2.4通信錯誤SQL30081N401
10.2.5資料庫備份、前滾暫掛402
10.2.6資料庫活動日誌刪除402
10.2.7資料庫損壞(數據頁、
索引頁)SQL1043C403
10.2.8索引重新構建問題405
10.2.9DB2實用程式不可用405
10.2.10快速清空表數據406
10.2.11表和索引統計信息
不一致407
10.3表空間狀態407
10.3.1backuppending408
10.3.2脫機(offlineandnot
accessible)409
10.3.3quiescedexclusive|share|
update409
10.3.4restorepending和storage
mustbedefined410
10.3.5rollforwardpending410
10.3.6表空間狀態總結411
10.4LOAD期間表狀態總結411
10.4.1checkpending411
10.4.2loadpending412
10.4.3loadinprogress412
10.4.4notloadrestartable413
10.4.5readaccessonly414
10.4.6unavailable414
10.5鎖相關問題415
10.5.1鎖升級415
10.5.2鎖等待問題解決流程415
10.5.3死鎖415
10.6CPU常見問題416
10.7記憶體常見問題416
10.7.1bufferpool設定過大,
導致資料庫無法啟動416
10.7.2排序溢出416
10.7.3鎖記憶體不足417
10.8latch問題導致系統性能
急劇下降417
10.9備份恢復常見問題417
10.10數據移動常見問題總結418
10.10.1標識列419
10.10.2生成列422
10.10.3大對象426
10.10.4空值處理427
10.10.5定界符注意問題430
10.10.6PC/IXF注意問題433
10.10.7代碼頁不同注意事項435
10.10.8日期格式436
10.10.9XML問題438
10.11安全常見問題總結441
10.11.1從PUBLIC撤銷隱式的許可權和特權441
10.11.2保護系統編目視圖443
10.11.3創建實例用戶並顯式指定組444
10.11.4為SYSxxx_GROUP參數使用顯式值444
10.11.5跟蹤隱式特權445
10.11.6不授予不必要的特權446
10.11.7使用加密的
AUTHENTICATION模式446
10.11.8使用獨立ID創建和擁有對象448
10.11.9使用視圖控制數據訪問449
10.11.10使用存儲過程控制數據訪問450
10.11.11使用LBAC控制數據訪問451
10.11.12對重要敏感數據進行加密451
10.12SQL0805和SQL0818錯誤454