DB2数据库是IBM公司关系型数据库核心产品,在国内以及全球有着广泛的应用。针对DB2初学者,本书循序渐进地把DB2所涉及的众多概念介绍给大家。客户端连通性、实例、数据库、表空间和缓冲池、数据移动、备份恢复、故障诊断、锁与并发以及数据库安全都是本书关注的重点。在介绍这些DB2对象和概念的同时,作者尽可能从DBA日常工作的角度探究DB2数据库常规维护工作。本书同时还就表、索引、序列、触发器等数据库对象从应用设计的角度进行了介绍。本书适合DB2的初学者、DB2开发人员、准备参加DB2认证考试的读者以及DB2数据库管理人员学习和阅读。.
本书结构
本书共15章,具体结构如下。
第1章:DB2数据库安装配置。在这一章中,除介绍初学者比较熟悉的Windows安装外,还花费了比较多的篇幅介绍了在Unix/Linux环境下的安装。这主要是因为作者碰到的DB2生产环境几乎都是在Unix/Linux环境下,而在Unix/Linux环境下的安装DB2时涉及到的准备工作又远大于Windows环境下。
第2章:创建实例和管理服务器。与其他数据库系统类似,DB2中也存在实例概念,主要对应着DB2二进制代码。而管理服务器则是DB2中特有的,用于帮助DBA对远程主机上的多个实例进行控制。本章中详细介绍了实例的创建、删除、配置以及相关的操作系统环境变量等,对管理服务器由于生产实践中使用较少则进行了简单介绍。
第3章:创建数据库和表空间。本章中介绍了DB2数据库的存储模型,创建数据库命令的具体选项对后继工作的影响。本章重点介绍了DB2数据库表空间的管理类型,并指出不同类型之间的优缺点。在表空间部分,本章还讲述了影响表空间性能的所有选项,如预取大小、扩展大小等,同时又指出操作系统IO设置对表空间性能影响。与表空间关联的是缓冲池,本章给出了缓冲池的设计、维护原则。
第4章:访问数据库。本章介绍了如何配置DB2服务器与客户端,使得客户端能够访问服务器上的数据。本章介绍了DB2命令行工具CLP使用,同时也讲述了在客户端上如何通过各种图形工具配置到服务器的连通性。在这些基础上,本章给出了DB2节点目录、数据库目录、本地数据库目录之间的相互关系与区别。
第5章:创建数据库对象。本章中介绍了常见DB2对象的维护方法,重点讲述了数据库中最重要的对象—— 表的设计考虑。同时本章也介绍了如何使用索引、序列提高性能。
第6章:数据移动。在创建完表等对象后,DBA下一步工作就是向表中填充数据。几乎所有系统的构建都涉及数据移动。本章介绍了从数据库中导出数据、向数据库导入数据,重点讲述了DB2效率非常高的数据移动工具LOAD。对LOAD工具,讲述了如何在线LOAD、如何监视LOAD、LOAD性能提高选项、LOAD异常处理等。在本章中,作者总结了数据移动中经常出现的问题,并给出了相关解决办法。最后,本章介绍了集成数据移动工具db2move和数据字典抽取工具db2look的使用。
第7章:数据库备份与恢复。本章中介绍了数据库系统通常碰到的几种备份恢复类型,并指出DB2如何配置日志以支持这些类型的。本章中描述了各种情况下如何重建数据库,同时给出了监控DB2数据库备份、恢复进度的方法,以及如何优化备份恢复的速度。
第8章:DB2故障诊断。数据库系统难免会出现各种各样的故障,DB2中有着一套完整的故障诊断机制。本章重点介绍了故障诊断中最重要的日志文件db2diag.log文件的格式,并且对各种格式条目给出详细解释。故障诊断中工具的使用是必不可少的,本章介绍了几个常用工具的使用方法,如db2pd、db2level、db2ls、db2support等。..
第9章:DB2性能监控。DB2数据库给出了多种手段用于监控数据库内部运行情况,如事件监控、快照监控、动态性能视图等。本章主要介绍了实践中使用较多的快照监控,给出了许多生产中的实际案例。
第10章:锁和并发。数据库系统设计用于并发支持大量用户连接到系统操作数据,锁在这里起到了关键性作用,特别是在OLTP系统中对性能有着至关重要的影响。本章首先介绍了通用的事务概念,并指出DB2在用户读取、写入数据时的加锁策略、锁模式、兼容性等。本章还介绍了在并发控制中常碰到的4种数据异常现象,同时讲述了DB2如何使用锁克服这些问题的。
第11章:数据库运行维护。一个数据库系统建设完成后,DBA是否就可以高枕无忧了呢?随着数据量的增加、用户数的增多,性能可能越来越差。这时需要DBA进行运行维护工作,本章重点关注这些内容,包括统计信息更新、表和索引碎片整理、包重新绑定等。持续进行这些维护工作有助于避免数据库系统性能下降。
第12章:数据库常用工具。本章介绍了DBA在日常工作中经常使用的各种工具,如性能解释工具、数据设计建议工具、基准测试工具、数据库一致性检查工具等。熟练掌握这些工具,对DBA而言犹如利器在手。
第13章:数据库安全。DB2数据库安全控制包括身份认证、权限、特权三个层次。身份认证控制着谁访问数据库,权限和特权则控制着能访问什么数据,两者只是控制粒度上存在差别。本章介绍了DB2何时进行身份认证以及进行什么认证,在实例、数据库上两个如何授予、撤销权限,以及特权的授予与撤销。
第14章:DBA日常维护。DBA的职责是保证数据库稳定、高效运行,除了正常的运行维护外,DBA还经常碰到各种其他问题,本章主要介绍了作者在日常工作进行的维护工作。本章首先介绍了如何对DB2数据库健康性检查以及检查涉及的各个方面,然后给出了找出各种类型的TOP10的SQL语句方法。
第15章:DB2常见问题总结。本章是对全书的总结,是作者多年来在各种环境下碰到实际问题的共享。
致谢
本书在出版的过程中得到了清华大学出版社王军编辑的大力支持!这套DB2书籍从选题、审稿到出版无不得到他的热心帮助,在此致以深深的谢意!
.感谢我的好兄弟骆洪青和袁春光,他们审核了书中的大部分章节。同时也感谢中信银行的胡瑞娟、苏兰芳和我的师弟林春,他们审核了部分章节并从用户的角度给我提出了很多宝贵的建议!
最后,谨以此书献给我慈爱的母亲,母亲从小就教育我努力、正直、踏实和勤奋。正是由于母亲的影响和教育才有了我今天的一点微小的成绩。...
牛新庄
2009.4.29