DB2數據庫是IBM公司關系型數據庫核心產品,在國內以及全球有著廣泛的應用。針對DB2初學者,《循序漸進DB2 DBA系統管理、運維與應用案例(第3版)》循序漸進地把DB2涉及的眾多概念和知識介紹給大家。實例、數據庫、表空間和緩沖池、數據遷移、備份恢復、DB2基本監控方法、數據庫參數、DBA日常維護以及數據庫常用工具都是《循序漸進DB2 DBA系統管理、運維與應用案例(第3版)》關注的重點。在介紹這些數據庫對象概念和用法的同時,作者盡可能從DBA日常工作的角度探究DB2數據庫管理和運維工作,并提供了豐富的應用案例,對讀者更有實踐指導意義。在新的一版中,所有的內容、示例都基于DB2 V10.5版本進行了修訂,并介紹了DB2 V11.1中的新功能、新特性。
《循序漸進DB2 DBA系統管理、運維與應用案例(第3版)》適合DB2初學者、DB2開發人員、準備參加DB2認證考試的讀者以及DB2數據庫管理人員學習和閱讀。
主要特色
◆ 作者以多年的一線實踐經驗作為指導,全面地介紹了如何使用、管理和運維DB2數據庫所需的基本知識。
◆ 《循序漸進DB2 DBA系統管理、運維與應用案例(第3版)》中案例豐富,使得知識講解更生動,更具有實操性。
◆ 《循序漸進DB2 DBA系統管理、運維與應用案例(第3版)》基于DB2 V10.5版本進行了修訂,并介紹了DB2 V11.1中的新功能和新特性。
牛新莊博士,現任中國民生銀行信息科技部總經理,長期致力于銀行業信息科技建設和管理工作。
作為國內*的數據庫資深專家,曾先后為建設銀行、中信銀行、交通銀行、廣東農信、青島海爾等大型企業提供數據庫顧問服務,為各行業的IT人才提供技術培訓,在《程序員》雜志開辟數據庫專欄,為從業者答疑解惑,廣泛地推動了國內數據庫技術的發展和信息技術的傳播。
作為國內信息科技領域的領軍人物,積極推進移動互聯、分布式、大數據、區塊鏈等新技術領域創新,傾力打造滿足業務飛速發展的信息系統。
他還任浙江大學、武漢大學、對外經貿大學、北京交通大學等多家高校和科研機構的兼職教授,并擔任銀監會信息科技發展與風險管理專家、中國工程建設標準化協會信息通信專業委員會專家、中國DB2用戶協會CDUG理事長、IBM信息管理客戶顧問委員會主席、中央企業網絡安全與信息化服務共享聯盟智庫首批專家等職務。
此外,擁有OCP、AIX、DB2、HP-UX、MQ、CICS和WebSphere等二十多項國際認證,獲得過國內數據庫領域*高榮譽的“中國首屆杰出數據庫工程師”獎、首屆IBM杰出軟件專家獎、“IT 168技術卓越”獎等獎項,以及“中國杰出CIO”等榮譽稱號。
第1章 DB2介紹和安裝 1
1.1 DB2數據庫概述 1
1.1.1 DB2發展歷史 1
1.1.2 DB2版本和平臺支持 5
1.1.3 DB2產品組件和功能 9
1.2 DB2數據庫的安裝與配置 12
1.2.1 DB2在Windows上的安裝 13
1.2.2 DB2在Linux/UNIX上的
安裝 21
1.3 DB2數據庫的體系結構 23
第2章 創建實例 31
2.1 實例 31
2.1.1 實例的概念 31
2.1.2 創建實例 32
2.1.3 實例目錄 35
2.1.4 實例的相關命令 39
2.1.5 DB2INSTANCE變量介紹 43
2.1.6 刪除實例 44
2.1.7 配置實例 45
第3章 創建數據庫和表空間 47
3.1 創建數據庫 47
3.1.1 DB2數據庫存儲模型 49
3.1.2 表空間管理類型 51
3.1.3 創建數據庫 54
3.1.4 數據庫目錄 63
3.2 設計表空間 66
3.2.1 創建表空間 66
3.2.2 維護表空間 69
3.2.3 表空間設計注意事項 76
3.2.4 prefechsize大小選擇 81
3.2.5 文件系統(CIO/DIO)和
裸設備 82
3.2.6 設置OVERHEAD和
TRANSFERRATE 85
3.2.7 優化RAID設備上表空間的
性能 86
3.2.8 合理設置系統臨時表空間 88
3.3 緩沖池 89
3.3.1 緩沖池的使用方法 89
3.3.2 緩沖池和表空間之間的關系 90
3.3.3 維護緩沖池 91
3.3.4 緩沖池的設計原則 93
3.4 多溫度存儲器 96
3.4.1 存儲器組 96
3.4.2 表空間與存儲器組 100
3.5 本章小結 101
第4章 訪問數據庫 103
4.1 訪問DB2 103
4.2 DB2 CLP處理程序 104
4.2.1 DB2 CLP簡介 104
4.2.2 DB2 CLP設計 104
4.2.3 DB2 CLP命令選項 106
4.2.4 設置DB2_CLPPROMPT
以定制DB2 CLP 110
4.3 配置DB2服務器的TCP/IP
通信 114
4.3.1 在服務器上更新services
文件 115
4.3.2 在服務器上更新數據庫
管理器配置文件 116
4.3.3 設置DB2服務器的通信
協議 117
4.3.4 查看服務器通信端口的
狀態 117
4.4 配置客戶機至服務器通信 117
4.4.1 客戶機至服務器通信概述 117
4.4.2 深入了解DB2節點目錄、
數據庫目錄 118
4.4.3 使用CLP配置客戶機到
服務器通信的案例 124
4.5 實際生產中連接數據庫的
各種方式 128
4.6 案例:數據庫連接問題診斷 131
4.7 本章小結 134
第5章 創建數據庫對象 135
5.1 模式 135
5.1.1 模式的概念 135
5.1.2 系統模式 137
5.1.3 設置和獲得當前模式 137
5.1.4 模式和用戶的區別 138
5.2 表設計 139
5.2.1 選擇合適的數據類型 139
5.2.2 選擇合適的約束類型 142
5.2.3 使用not null with default 145
5.2.4 生成列及應用案例 145
5.2.5 自動編號和標識列應用
案例 146
5.2.6 使用not logged initially
特性 147
5.2.7 使用append on特性 148
5.2.8 數據、索引和大對象分開
存放 149
5.2.9 設置pctfree 149
5.2.10 表的locksize 150
5.2.11 表的volatile特性 150
5.2.12 表維護相關命令 151
5.2.13 表設計高級選項 155
5.3 索引設計 160
5.3.1 索引的優點 160
5.3.2 索引類型 161
5.3.3 索引結構 164
5.3.4 理解索引的訪問機制 167
5.3.5 創建集群索引 170
5.3.6 創建雙向索引 171
5.3.7 完全索引訪問
(index access only) 172
5.3.8 創建索引示例 173
5.3.9 索引總結 179
5.4 使用序列提高性能 181
5.4.1 應用程序性能和序列 181
5.4.2 序列的設計原則 182
5.4.3 維護序列 183
5.4.4 比較序列與標識列 187
5.5 視圖 189
5.5.1 視圖的類型 189
5.5.2 創建with check option
視圖 193
5.5.3 維護視圖 194
5.6 表表達式 195
5.6.1 嵌套的表表達式 195
5.6.2 公用表表達式 195
5.7 觸發器設計 197
5.7.1 觸發器的類型 197
5.7.2 觸發器創建示例 199
5.7.3 觸發器設計總結 201
5.8 例程 202
5.9 本章小結 203
第6章 數據移動 205
6.1 數據移動格式 205
6.1.1 定界ASCII文件格式 206
6.1.2 非定界ASCII文件格式 206
6.1.3 PC/IXF文件格式 207
6.1.4 工作表文件格式 207
6.1.5 游標 207
6.2 EXPORT 208
6.2.1 EXPORT概述 208
6.2.2 導出數據 208
6.2.3 導出數據示例 211
6.3 IMPORT 212
6.3.1 IMPORT概述 212
6.3.2 導入數據 212
6.3.3 導入示例 217
6.4 LOAD 219
6.4.1 LOAD概述 219
6.4.2 裝入數據 220
6.4.3 裝入示例 225
6.4.4 在線LOAD 229
6.4.5 監控LOAD進度 232
6.4.6 LOAD期間和之后的表空間
狀態 233
6.4.7 使用CURSOR文件類型
移動數據 236
6.4.8 提高LOAD性能 238
6.4.9 LOAD失敗恢復 242
6.4.10 LOAD和IMPORT的
比較 245
6.5 數據移動的性能問題 246
6.6 db2move和db2look 248
6.6.1 數據庫移動工具——
db2move 248
6.6.2 DB2 DDL提取工具
——db2look 250
6.6.3 利用db2move和db2look
移動數據的案例 251
6.6.4 帶COPY操作的db2move
實用程序 254
6.7 本章小結 259
第7章 數據庫備份與恢復 261
7.1 恢復的概念 261
7.1.1 崩潰恢復(Crash Recovery) 265
7.1.2 災難恢復(Disaster
Recovery) 266
7.1.3 版本恢復(Version Restore) 266
7.1.4 前滾恢復(RollForward
Recovery) 267
7.2 DB2日志 269
7.2.1 日志文件的使用 270
7.2.2 日志類型 272
7.2.3 日志相關配置參數 275
7.2.4 數據庫日志總結 276
7.2.5 DB2日志的建議設置 278
7.3 數據庫和表空間備份 280
7.3.1 數據庫備份 280
7.3.2 表空間備份 282
7.3.3 增量備份 282
7.3.4 檢查備份完整性——
db2ckbkp 283
7.4 數據庫和表空間恢復 285
7.4.1 數據庫恢復 285
7.4.2 表空間恢復 288
7.4.3 增量恢復 289
7.4.4 增量恢復檢查—— db2ckrst 290
7.4.5 重定向恢復 291
7.4.6 恢復已刪除的表 294
7.5 數據庫和表空間前滾 298
7.5.1 數據庫前滾 298
7.5.2 表空間前滾 299
7.6 RECOVER實用程序 302
7.7 恢復歷史文件 306
7.8 數據庫重建 309
7.8.1 數據庫重建的概念 309
7.8.2 使用表空間備份重建可
恢復數據庫 309
7.8.3 只使用部分表空間備份
重建可恢復數據庫 312
7.8.4 使用包含日志文件的在線
備份重建數據庫 314
7.8.5 使用增量備份映像重建
可恢復數據庫 314
7.8.6 使用重定向選項重建
可恢復數據庫 315
7.8.7 重建不可恢復數據庫 315
7.8.8 數據庫重建的限制 316
7.9 監控備份、復原和恢復進度 316
7.10 備份、恢復和復原期間的
表空間狀態 318
7.11 優化備份、復原和恢復
性能 318
7.12 備份恢復最佳實踐 320
第8章 SQL基礎知識 323
8.1 簡單查詢入門 323
8.1.1 SELECT和FROM 324
8.1.2 WHERE 324
8.1.3 ORDER BY 324
8.1.4 GROUP BY和HAVING 325
8.2 搜索條件 326
8.2.1 謂詞種類 326
8.2.2 基本謂詞 326
8.2.3 量化謂詞 327
8.2.4 BETWEEN、EXISTS和IN
謂詞 328
8.2.5 LIKE謂詞 328
8.2.6 NULL謂詞 329
8.3 數據操作語言 329
8.3.1 INSERT 329
8.3.2 DELETE 330
8.3.3 UPDATE 331
8.3.4 MERGE 332
8.4 多表查詢 334
8.4.1 JOIN連接 334
8.4.2 集合運算 335
8.5 高性能的SQL語句 337
8.5.1 高效SQL的準則 337
8.5.2 提高插入性能的準則 339
8.5.3 復雜查詢的準則 340
8.5.4 索引的注意事項 341
8.6 本章小結 342
第9章 DB2基本監控方法 343
9.1 監控工具概述 343
9.2 快照監視器 345
9.3 利用表函數監控 350
9.4 性能管理視圖及案例 352
9.5 快照監視器案例 358
9.5.1 監控案例1——動態SQL
語句 358
9.5.2 監控案例2——通過表函數
監控 361
9.5.3 編寫快照監控腳本 362
9.5.4 db2pd及監控案例 363
9.5.5 事件監視器及監控案例 370
9.5.6 db2mtrk及監控案例 375
9.6 本章小結 377
第10章 運行數據庫必須考慮的數據庫
設置 379
10.1 數據庫配置參數概述 379
10.2 通信設置 381
10.3 內存有關的設置 383
10.4 鎖有關的設置 389
10.5 日志相關的配置 394
10.6 自動維護相關的配置 399
10.7 監控相關的配置 400
10.8 安全相關的設置 402
10.9 供參考的DB2上線前設置 402
10.10 本章小結 405