标题：运筹帷幄DB2——从Oracle运维转型
概要信息
作者： 王飞鹏 王富国 刘旭 孙岳 张广舟等著
丛书名： 舞动DB2系列 
出版社：电子工业出版社 
上架时间：2012-8-27
出版日期：2012 年8月
页码：454
内容简介
《运筹帷幄DB2——从Oracle运维转型》是舞动DB2系列的第三册。
全书用通俗易懂的语言诠释了DB2 数据库的管理和维护工作，提出了DB2 运维的新思路，并从实战角度阐述了DB2 数据库在运维过程中的常见问题、分析思路和解决方案，配以典型的行业案例的DB2学习书籍。
《运筹帷幄DB2——从Oracle运维转型》适合数据库管理员、数据库运维人员、数据库架构师、数据库咨询顾问以及学习数据库运维技术的高校学生或者从事相关课程教学的教师阅读使用。
作者简介
王飞鹏 DB2资深顾问，国内首屈一指的数据库开发、维护、优化和架构专家。曾为电信、银行、中央部委、中国高铁等大型数据库项目做出了重要贡献。发表数据库论文12篇，拥有软件专利3项。每年通过大量咨询、讲座、培训等方式，为数据库人才更好地运用数据库技术做出最大的努力。
王富国 IBM Data Warehouse/BI 项目组高级软件工程师，IBM认证高级DBA。有丰富的数据仓库经验，在数据仓库健康检查和高可用性方面也有颇深的研究，具有丰富的性能调优、实施和客户支持经验。
刘旭 DB2数据库资深顾问。在SAP与DB2集成方面具有专长，曾为制造，能源，金融等行业数据库项目提供技术支持。发表数据库论文多篇，每年通过咨询，培训等方式，为推广DB2产品做出重要贡献。
孙岳 DB2迁移顾问及SAP技术顾问，发表论文和技术文章多篇，目前从事DB2和SAP/DB2的迁移咨询和支持工作。作为IBM和SAP认证的技术专家，为电信行业、政府部门和银行成功实施过数据库和数据仓库大型项目。同时担任多门数据库课程的培训讲师，培养了大量的SAP和DB2方面的人才。
张广舟 DB2数据库咨询顾问。多年来一直从事DB2核心开发工作。现任IBM中国SQL编译器和优化器开发组长。曾发表多篇数据库技术论文，擅于解决大型数据库性能问题，并拥有软件专利1项。
目录
第1章 DBA与DB2运维 1 
1.1 DBA们的困惑：从Oracle向DB2运维转型 2 
1.1.1 “库二代”的前世今生 2 
1.1.2 向Oracle转型的挑战 4 
1.2 DBa们，你们对自己的职业自信吗 6 
1.2.1 学哪个数据库更有前途：oracle还是DB2 7 
1.2.2 “钱途”和提升能力哪个更重要 8 
1.3 DBa的职责：无限风光在险峰 9 
1.3.1 日常维护 10 
1.3.2 处理故障 14 
1.4 DBa修炼之道：运筹帷幄 决胜千里 17 
1.4.1 搭起黄金屋 17 
1.4.2 精通软硬件技术 18 
1.4.3 加强精神层面的修养 19 
1.4.4 熟练运用工具 20 
1.5 读者使用方法 23 
1.6 运维攻略笔记——运筹帷幄从蒙古起步 23 
1.7 小结 25 
第2章 DB2安装与配置——瑜伽式的运维启航 26 
.2.1 摸清特性——DB2的version与特性 27 
2.1.1 认识她选择她——DB2version 27 
2.1.2 了解她明白她——DB2的特性 28 
2.2 并非“万事开头难”——DB2的安装 30 
2.2.1 关键第一步——修改系统内核参数 30 
2.2.2 轻轻松松开始——通过安装向导在linux平台上安装DB2 31 
2.2.3 DB2高级安装方法（适合linux/unix平台） 40 
2.2.4 享受成果——数据库操作初体验 44 
2.2.5 理清在不同平台上安装的差异——windows、linux和unix平台安装要点 45 
2.2.6 DB2安装常见问题 47 
2.3 配置决定一切——DB2的环境与参数配置 49 
2.3.1 环境变量（environment variables） 50 
2.3.2 文件注册表 51 
2.3.3 数据库管理器配置参数（DBm cfg） 52 
2.3.4 数据库配置参数（DB cfg） 53 
2.3.5 参数配置的实例 54 
2.4 DB2数据库的系统编目 56 
2.4.1 什么是DB2编目表 56 
2.4.2 syscat编目视图 57 
2.4.3 sysstat编目视图 60 
2.4.4 与oracle数据字典的比较 61 
2.5 运维攻略笔记——坐等扬帆时 62 
2.6 章小结 63 
第3章 雾里看花——DB2的管理和操作 64 
3.1 从DB2体系结构开始 65 
3.1.1 DB2体系结构：分层管理 65 
3.1.2 DB2进程模型：线程vs进程 66 
3.1.3 掌握DB2内存模型：不容易 69 
3.2 DB2实例 75 
3.2.1 什么是实例 76 
3.2.2 你必须掌握的：实例管理命令 77 
3.3 DB2数据库 78 
3.3.1 创建数据库：竟然有这么多学问 78 
3.3.2 你必须掌握的：数据库管理命令 80 
3.4 DB2表空间 82 
3.4.1 表空间种类：真不少 82 
3.4.2 你必须掌握的绝活：DB2存储规划 83 
3.4.3 表空间管理的三板斧 88 
3.4.4 攻克难关：降低表空间高水位标记 91 
3.5 DB2访问与操作 95 
3.5.1 访问DB2的接口 95 
3.5.2 访问远程数据库的方式 96 
3.5.3 实战：连接远程数据库 98 
3.5.4 你必须掌握的：实用DB2命令 100 
3.6 DB2安全控制 102 
3.6.1 什么是DB2中的认证 102 
3.6.2 什么是DB2中的授权 104 
3.6.3 如何对敏感数据加密 117 
3.6.4 三层架构的安全基石：可信上下文 120 
3.7 运维攻略笔记——当oracle使用者遇见DB2 121 
3.8 章小结 122 
第4章 芝麻开门——DB2数据仓库 123 
4.1 数据仓库是什么 124 
4.1.1 数据仓库的误区 124 
4.1.2 数据仓库的体系结构 126 
4.2 支撑数据仓库的DB2特性 127 
4.2.1 分区数据库 127 
4.2.2 灵活的数据分区 129 
4.2.3 分区环境中的连接（join）策略 132 
4.2.4 物化查询表 134 
4.3 DB2数据仓库系统设计 135 
4.3.1 bcu/bpu的设计原则 135 
4.3.2 数据bpu上存储划分的原则 138 
4.3.3 数据库文件的系统划分 138 
4.3.4 仓库中诞生的数据库 139 
4.3.5 数据库分区组的设计 139 
4.3.6 缓冲池的设计 140 
4.3.7 数据库日志的设计 141 
4.3.8 表空间的设计 142 
4.3.9 表的存放技巧 142 
4.3.10 数据压缩 143 
4.4 数据仓库实战 143 
4.4.1 实战的硬件环境 143 
4.4.2 数据仓库中实例的规划与实施 144 
4.4.3 数据仓库中数据库的规划与实施 149 
4.4.4 数据仓库中的DB2参数设置 152 
4.4.5 其他操作 154 
4.5 DB2工作负载管理（wlm） 156 
4.5.1 创建wlm的监视器 156 
4.5.2 怎样控制已知工作的负载 158 
4.5.3 怎样控制不可预见的工作负载 159 
4.5.4 对并行load的工作负载限制 162 
4.6 数据仓库日常运维 163 
4.6.1 DB2数据仓库可扩展吗 163 
4.6.2 对数据库分区的维护 163 
4.6.3 分区数据库中常用的两个命令 168 
4.6.4 数据仓库的备份与恢复 169 
4.7 与oracle数据仓库的比较 169 
4.8 运维攻略笔记：想买房 先预测一把地铁修到哪里 170 
4.9 章小结 172 
第5章 运维中的锁处理与并发控制 173 
5.1 如履薄冰——并发环境下的数据库运维 174 
5.2 并发控制的法宝——DB2锁机制解析 180 
5.2.1 锁与事务一致性 181 
5.2.2 锁的类型和相互关系 184 
5.3 定制并发——DB2隔离级别 188 
5.3.1 隔离级别解析 188 
5.3.2 隔离级别设定 190 
5.3.3 隔离级别与锁常见问题 192 
5.4 样板戏——锁之案例解析 194 
5.4.1 解锁的“样板”套路 194 
5.4.2 沙家浜开始了 195 
5.4.3 锁等待分析 197 
5.4.4 锁超时分析 202 
5.4.5 锁升级分析 205 
5.4.6 死锁探秘 206 
5.5 精打细算——DB2并发性的最大化 215 
5.5.1 并发性与性能问题 215 
5.5.2 并发性与应用程序设计 216 
5.5.3 如何实现并发性的最大化 217 
5.6 强力pk——DB2和oracle并发机制比较 220 
5.7 经验之谈——提升系统并发能力的秘诀 221 
5.8 运维攻略笔记：体验过网络购票吗？感觉慢的话，来这里看看 224 
5.9 小结 225 
第6章 DB2日常运维——监控 226 
6.1 运维人员的必修课——监控 227 
6.1.1 监控工作的原则 227 
6.1.2 监控的任务 228 
6.2 每天你需要做什么 230 
6.2.1 监控存储空间状态 231 
6.2.2 监控主机状态 234 
6.2.3 检查数据库状态 236 
6.2.4 每日监控任务与命令对照表 245 
6.3 每周你需要做什么 246 
6.3.1 检查全量备份 246 
6.3.2 检查是否需要runstats 248 
6.3.3 检查表是否需要重组 248 
6.3.4 查找并重新绑定无效包 250 
6.3.5 监控新对象和应用程序变动 250 
6.4 每月你需要做什么 252 
6.4.1 监控月结过程 252 
6.4.2 统计数据增长 253 
6.4.3 检查权限变更 254 
6.4.4 审计用户操作 255 
6.4.5 检查软件更新 258 
6.5 监控利器——DB2监控工具 259 
6.5.1 快照监视器 259 
6.5.2 事件监视器 262 
6.5.3 监视器表函数 266 
6.5.4 管理视图 268 
6.5.5 DB2pd 270 
6.5.6 DB2top 273 
6.6 如何监控特定问题 274 
6.7 运维攻略笔记——女性运维指南 280 
6.8 小结 281 
第7章 有备无患——数据库备份与恢复 282 
7.1 DB2金刚不坏之身的秘密 283 
7.1.1 运维人员必须看清的日志真相 283 
7.1.2 突然断电之灾难恢复 290 
7.1.3 归档日志很给力，也会吓坏人 292 
7.1.4 日志与备份恢复的关系 295 
7.2 挂一挡起步 295 
7.2.1 备份很简单吗 295 
7.2.2 手把手教你使用backup命令 298 
7.2.3 oracle、DB2、恢复和前滚恢复 300 
7.2.4 手把手教你使用restore和rollforward命令 302 
7.2.5 有个捷径：recover命令恢复 306 
7.2.6 有个技巧：恢复被删除的表 309 
7.3 踩油门快跑 312 
7.3.1 备份和恢复机制 312 
7.3.2 增量备份与恢复 313 
7.3.3 全备份和表空间备份 316 
7.3.4 大容量磁带库备份恢复 318 
7.3.5 重定向恢复数据——应对机器损坏的招数 322 
7.3.6 flash copy——高级备份方式 326 
7.4 工具箱 327 
7.4.1 监控工具 327 
7.4.2 查看历史记录 329 
7.4.3 检查备份介质完整性 331 
7.4.4 实例参数导出导入 332 
7.5 dpf分区环境下的备份与恢复 333 
7.5.1 dpf分区环境下备份与恢复的特点 333 
7.5.2 再论backup与restore命令 334 
7.5.3 需要掌握：DB2_all和rah命令 337 
7.6 最佳实践 338 
7.6.1 了解DB2备份策略 338 
7.6.2 如何让我的备份井井有条 339 
7.6.3 还有哪些可供调整的参数 340 
7.7 运维攻略笔记——一条龙解决方案 342 
7.8 小结 343 
第8章 数据移动——搬运的年代 344 
8.1 数据移动 时刻准备着 345 
8.1.1 移动数据不容易 345 
8.1.2 移动手段 多多益善 345 
8.1.3 “移动的粮草”先行 346 
8.2 数据移动双胞胎——port兄弟 348 
8.2.1 手把手教你使用export命令导出数据 348 
8.2.2 手把手教你使用import命令导入数据 353 
8.3 load面面观 363 
8.3.1 手把手教你使用load命令导入数据 363 
8.3.2 你所要知道的load的四个阶段 366 
8.3.3 你所要知道的load过程中表的状态以及应对方法 368 
8.3.4 load提速与刘翔跨栏有一样的烦恼 371 
8.3.5 load好，还是import更棒 372 
8.4 还有什么移动方式可供选择 373 
8.4.1 使用DB2move在数据库间移动数据 374 
8.4.2 使用admin_move_table在数据库内移动表 378 
8.4.3 使用admin_copy_schema在数据库内移动对象 382 
8.4.4 特殊对象的移动方式 383 
8.4.5 物理层面移动数据 389 
8.5 多分区环境下的数据移动 395 
8.5.1 多分区环境下的load 395 
8.5.2 多分区环境下load需要注意的问题 400 
8.6 oracle数据移动与DB2数据移动的比较 401 
8.7 运维攻略笔记——检验的三个指标 402 
8.8 章小结 403 
第9章 数据库故障诊断 404 
9.1 救场如救火 排障如救人 405 
9.1.1 数据库出了故障？急！ 405 
9.1.2 常见问题与故障分类 407 
9.1.3 排障六诀 408 
9.1.4 日常运维“防患于未然” 409 
9.2 你必须掌握的故障诊断工具 410 
9.2.1 DB2support收集诊断信息 410 
9.2.2 DB2diag分析事故现场 413 
9.2.3 DB2pd诊断和调优 415 
9.2.4 DB2trc跟踪DB2的内部运行 416 
9.3 一场惊心动魄的排障实战 417 
9.4 DB2数据库排障案例集 420 
9.4.1 与实例相关的问题集锦 421 
9.4.2 存储规划问题 425 
9.4.3 DB2日志、备份恢复一箩筐 431 
9.4.4 load，一定要hold住 433 
9.4.5 日常运维那些事儿 435 
9.4.6 数据仓库排障 436 
9.5 运维攻略笔记——呵呵，ibm的人喜欢在盘古大观上看问题 440 
9.6 小结 441 
附录a oracle和DB2机制对比 442 
附录b oracle和DB2术语对比 444 
附录c oracle和DB2命令对比 446 
附录d 缩略语 450 
后记 455 
参考文献 456 
​