请教下各位游戏策划和运维的大大,我现在要把服务器B和C的数据库运维全部移到服务器A

加载中,请稍候...
加载中,请稍候...
DevOps故障排除(Linux服务器运维最佳实践)/Linux\Unix技术丛书
其它类似商品
正在加载中,请稍候...
看过本商品的人还买了:
正在加载中,请稍候...
正在加载中,请稍候...
正在加载中,请稍候...
正在加载中,请稍候...
DevOps故障排除(Linux服务器运维最佳实践)/Linux\Unix技术丛书
商品名称:DevOps故障排除(Linux服务器运...
商品编号:
上架时间: 10:41:10
商品毛重:500.00g
商品产地:
如果您发现商品信息不准确,
商品名称: DevOps故障排除(Linux服务器运维最佳实践)/Linux\Unix技术丛书
出版社: 机械工业
出版时间:
作者:(美)兰金|译者:王东明//王飞//刘洁
开本:32开
印刷时间:
商品类型:图书
编辑推荐语
兰金编著的《DevOps故障排除(Linux服务器运维最佳实践)》由浅入深,层次分明,首先介绍了贯穿本书的故障排除中要掌握的基本方法和原则,然后从服务器的启动开始讲起,再过渡到常用服务器的故障排除技术,最后还简单介绍了常见的硬件问题。书中介绍的方法与技术都相当简单、实用,操作性很强,读者既可以在碰到问题时,把本书当做工具书,查阅相关内容;也可以在闲暇时通读本书,更好地了解Linux服务器故障排除的种种标准方法。
DevOps是一组过程、方法与系统的统称,用于促 进开发者、质量保证人员(QA)以及系统管理员之间的 沟通、协作与整合。在DevOps团队中,虽然大家一直 强调团队合作,但由于没有相同的故障排除技术,在 遇到问题时,每个人往往限于自己的传统职责,要等 到其他人诊断完成后方能开始工作。这样,尽管采用 了DeVOps原则,企业的效率也并不高。本书面向 DevOps团队,通过系统讲解常见的Linu&故障排除技 术,帮助开发者更准确地追踪系统负载加重的原因, 让QA人员在产品发布前更好地诊断问题,系统管理员 对自己的诊断更有把握。&&&& 兰金编著的《DevOps故障排除(Linux服务器运维 最佳实践)》首先介绍了故障排除中要掌握的基本方 法和原则,然后针对Linux系统中的常见问题,逐个 分析故障原因并给出故障排除方法,这些问题包括服 务器运行缓慢、系统无法启动、不能写入磁盘、服务 器宕机、主机名无法解析、Web服务器宕机、数据库 运行缓慢等,最后还简单介绍了常见的硬件问题。&&&& 《DevOps故障排除(Linux服务器运维最佳实践) 》内容全面,结构清晰,适合开发者、QA人员和系统 管理员学习参考。&&&&
译者序&&前言&&第1章 故障排除的最佳实践&& 1.1 划分问题空间&& 1.2 协同工作时的良好沟通&& 1.2.1 电话会议&& 1.2.2 直接对话&& 1.2.3 电子邮件&& 1.2.4 实时聊天室&& 1.2.5 备用沟通方法&& 1.3 首选快速、简单的测试,而不是缓慢、复杂的测试&& 1.4 多尝试过去的解决方案&& 1.5 记录问题和解决方案&& 1.6 了解改动&& 1.7 了解系统如何工作&& 1.8 谨慎使用Int&& 1.9 抵制重启&&第2章 章服务器为什么这么慢?耗尽了CPU、RAM和磁盘I/O资源&& 2.1 系统负载&& 2.2 使用top命令解决负载问题&& 2.2.1 了解top命令的输出&& 2.2.2 解决高用户时间的问题&& 2.2.3 解决内存不足的问题&& 2.2.4 解决高I/O等待时间问题&& 2.3 问题发生后的高负载处理&& 2.3.1 配置sy&& 2.3.2 查看CPU统计信息&& 2.3.3 查看RAM统计信息&& 2.3.4 查看磁盘统计信息&& 2.3.5 查看之前的统计信息&&第3章 为什么系统无法启动?解决启动问题&& 3.1 Linux启动流程&& 3.1.1&& 3.1.2 GRUB和Linux启动载入程序&& 3.1.3 内核与初始RAM磁盘&& 3.1.4 /sbi&& 3.2 BIOS启动顺序&& 3.3 修复GRUB&& 3.3.1 没有GRUB提示&& 3.3.2 阶段1.5 GRUB提示&& 3.3.3 配置错误的GRUB提示&& 3.3.4 从活动系统中修?&& 3.3.5 通过恢复磁盘修?&& 3.4 禁止启动界面&& 3.5 无法挂载根文件系统&& 3.5.1 根内核参数&& 3.5.2 根设备更改&& 3.5.3 根分区损坏或失效&& 3.6 无法挂载二级文件系统&&第4章 为什么磁盘无法写入?解决磁盘满或者磁盘损坏的问题&& 4.1 磁盘满&& 4.1.1 保留区块&& 4.1.2 找到占用空间最大的目录&& 4.2 节点不足&& 4.3 文件系统只读&& 4.4 修复损坏的文件系统&& 4.5 修复RAID&&第5章 服务器宕机了?追踪网络问题的根源&& 5.1 服务器A不能和服务器B通信&& 5.1.1 客户端或者服务器问题&& 5.1.2 链路接通了吗&& 5.1.3 接口是否启用&& 5.1.4 是否连通本地网络&& 5.1.5 DNS是否工作正常&& 5.1.6 是否可以路由到远程主机&& 5.1.7 远程端口是否开放&& 5.1.8 在本地测试远端主机&& 5.2 网络速度较慢的故障排除&& 5.2.1 DNS的问题&& 5.2.2 通过traceroute查找网络缓慢的原因&& 5.2.3 使用iftop查看带宽使用情况&& 5.3 抓取数据包&& 5.3.1 使用tc&& 5.3.2 使用Wire&&第6章 为什么主机名无法解析?解决DNS服务器的问题&& 6.1 DNS客户端故障排除&& 6.1.1 未配置名称服务器或者无法访问名称服务器&& 6.1.2 丢失查询路径或者名称服务器问题&& 6.2 DNS服务器故障排除&& 6.2.1 了解dig的输出&& 6.2.2 跟踪DNS查询&& 6.2.3 递归名称服务器的问题&& 6.2.4 什么情况下没有执行更新&&第7章 为什么无法收发邮件?追踪邮件问题&& 7.1 追踪邮件请求&& 7.2 了解邮件头信息&& 7.3 邮件发送的问题&& 7.3.1 客户端无法与外部邮件服务器通信&& 7.3.2 出站邮件服务器不允许转发&& 7.3.3 出站邮件服务器无法与目标服务器通信&& 7.4 接收邮件的问题&& 7.4.1 telnet测试无法连接&& 7.4.2 telnet可以连接,但消息却被拒绝了&& 7.4.3 研究邮件日志&&第8章 网站宕机了?追踪Web服务器问题&& 8.1 服务器是否正在运行&& 8.1.1 远程端口是否开放&& 8.1.2 在本地测试远程主机&& 8.2 使用命令行测试Web服务器&& 8.2.1 使用curl测试Web服务器&& 8.2.2 使用telnet测试Web服务器&& 8.3 HTTP状态码&& 8.3.1 1&&信息状态码&& 8.3.2 2&&成功状态码&& 8.3.3 3&&重定向状态码&& 8.3.4 4&&客户端错误状态码&& 8.3.5 5&&服务器错误状态码&& 8.4 分析Web服务器的日志&& 8.5 获取Web服务器统计数据&& 8.6 解决常见的Web服务器问题&& 8.6.1 配置问题&& 8.6.2 权限问题&& 8.6.3 Web服务器性能迟缓或不可用&&第9章 为什么数据库这么慢?追踪数据库问题&& 9.1 查找数据库日志&& 9.1.1 MySQL&& 9.1.2 Postgr&& 9.2 数据库还在运行吗&& 9.2.1&& 9.2.2 Postgr&& 9.3 获得数据库度量值&& 9.3.1 MySQL&& 9.3.2 Postgr&& 9.4 识别查询缓慢的问题&& 9.4.1 MySQL&& 9.4.2 Postgr&&第10章 这是硬件问题!诊断常见的硬件问题&& 10.1 硬盘驱动器无法工作&& 10.2 测试内存错误&& 10.3 网卡故障&& 10.4 服务器过热&& 10.5 电源供电故障&&
本产品质保期为:
服务承诺:
注:因厂家会在没有任何提前通知的情况下更改产品包装、产地或者一些附件,本司不能确保客户收到的货物与商城图片、产地、附件说明完全一致。只能确保为原厂正货!并且保证与当时市场上同样主流新品一致。若本商城没有及时更新,请大家谅解!
权利声明:京东上的所有商品信息、客户评价、商品咨询、网友讨论等内容,是京东重要的经营资源,未经许可,禁止非法转载使用。
注:本站商品信息均来自于合作方,其真实性、准确性和合法性由信息拥有者(合作方)负责。本站不提供任何保证,并不承担任何法律责任。
正在加载中,请稍候...
温馨提示:因厂家更改产品包装、产地或者更换随机附件等没有任何提前通知,且每位咨询者购买情况、提问时间等不同,为此以下回复仅对提问者3天内有效,其他网友仅供参考!若由此给您带来不便请多多谅解,谢谢!
正在加载中,请稍候...
正在加载中,请稍候...
正在加载中,请稍候...
正在加载中,请稍候...
正在加载中,请稍候...
正在加载中,请稍候...
正在加载中,请稍候...
正在加载中,请稍候...
正在加载中,请稍候...
正在加载中,请稍候...
正在加载中,请稍候...
正在加载中,请稍候...
正在加载中,请稍候...
浏览了该商品的用户还浏览了
正在加载中,请稍候...
浏览了该商品的用户最终购买了
正在加载中,请稍候...
操作系统排行榜
购买了该商品的用户还购买了
正在加载中,请稍候...
浏览了该商品的用户还浏览了
正在加载中,请稍候...
根据浏览猜你喜欢
正在加载中,请稍候...
正在加载中,请稍候...DB2数据库是IBM公司关系型数据库核心产品,在国内以及全球有着广泛的应用。针对DB2初学者,《循序渐进DB2(第2版)――DBA系统管理、运维与应用案例》循序渐进地把DB2涉及的众多概念和知识介绍给大家。客户端连通性、实例、数据库、表空间和缓冲池、数据移动、备份恢复、SQL基础知识、DB2基本监控方法、运行数据库必须考虑的设置、DBA日常维护以及数据库常用工具都是本书关注的重点。在介绍这些数据库对象和概念的同时,作者尽可能从DBA日常工作的角度探究DB2数据库常规维护工作。本书同时还就表、索引、序列、触发器等数据库对象从应用设计的角度进行了介绍。本书适合DB2的初学者、DB2开发人员、准备参加DB2认证考试的读者以及DB2数据库管理人员学习和阅读。
牛新庄,国内顶尖数据架构和信息治理专家,担任对外经济贸易大学客座教授、北京交通大学兼职教授、中国db2用户协会(cdug)理事长、亚洲金融合作联盟信息科技委员会主任。2008年曾以217万年薪受聘于中国建设银行总行特聘技术顾问,2009年受邀加入中国民生银行总行科技部,现任总行科技部总经理。
牛新庄博士拥有20多项国际厂商认证(包括db2 v5~v9的全部认证),获得过国内数据库领域最高荣誉的“2006年中国首届杰出数据库工程师奖”、“首届ibm杰出软件专家奖”、“2006年it168技术卓越奖”等奖项。
《循序渐进db2(第2版)――dba系统管理、运维与应用案例》
第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变量介绍 44
2.1.6 删除实例 45
2.1.7 配置实例 45
2.2 管理服务器 46
.2.2.1 管理服务器的概念 46
2.2.2 创建管理服务器 47
2.2.3 管理服务器的相关命令 49
2.2.4 删除管理服务器 49
2.2.5 配置管理服务器 50
第3章 创建数据库和表空间 51
3.1 创建数据库 51
3.1.1 db2数据库存储模型 53
3.1.2 表空间管理类型 55
3.1.3 创建数据库 58
3.1.4 数据库目录 70
3.2 设计表空间 73
3.2.1 创建表空间 73
3.2.2 维护表空间 76
3.2.3 表空间设计注意事项 83
3.2.4 prefechsize大小选择 89
3.2.5 文件系统(cio/dio)和裸设备 90
3.2.6 设置overhead和transferrate 93
3.2.7 优化raid设备上表空间的性能 93
3.2.8 合理设置系统临时表空间 95
3.3 缓冲池 96
3.3.1 缓冲池的使用方法 97
3.3.2 缓冲池和表空间之间的关系 97
3.3.3 维护缓冲池 98
3.3.4 缓冲池的设计原则 101
3.4 db2 v10新特性――多温度存储器 104
3.4.1 存储器组 104
3.4.2 表空间与存储器组 108
3.5 本章小结 109
第4章 访问数据库 111
4.1 访问db2 111
4.2 db2图形化操作环境 112
4.3 db2 clp处理程序 121
4.3.1 db2 clp简介 121
4.3.2 db2 clp设计 122
4.3.3 db2 clp命令选项 124
4.3.4 设置db2_clpprompt以定制db2 clp 127
4.4 配置db2服务器的tcp/ip通信 131
4.4.1 在服务器上更新services文件 132
4.4.2 在服务器上更新数据库管理器配置文件 133
4.4.3 设置db2服务器的通信协议 134
4.4.4 查看服务器通信端口的状态 134
4.4.5 使用控制中心配置db2服务器通信 134
4.5 配置客户机至服务器通信 135
4.5.1 客户机至服务器通信概述 135
4.5.2 使用控制中心配置客户端通信 136
4.5.3 使用ca配置客户机到服务器通信 137
4.5.4 深入了解db2节点目录、数据库目录 142
4.5.5 使用clp配置客户机到服务器通信的案例 148
4.6 实际生产中连接数据库的各种方式 152
4.7 案例:数据库连接问题诊断 155
4.8 本章小结 159
第5章 创建数据库对象 161
5.1 模式 161
5.1.1 模式的概念 161
5.1.2 系统模式 163
5.1.3 设置和获得当前模式 163
5.1.4 模式和用户的区别 164
5.2 表设计 165
5.2.1 选择合适的数据类型 165
5.2.2 选择合适的约束类型 168
5.2.3 使用not null with default 171
5.2.4 生成列及应用案例 171
5.2.5 自动编号和标识列应用案例 172
5.2.6 使用not logged initially特性 173
5.2.7 使用append on特性 174
5.2.8 数据、索引和大对象分开存放 175
5.2.9 设置pctfree 175
5.2.10 表的locksize 176
5.2.11 表的volatile特性 176
5.2.12 表维护相关命令 177
5.2.13 表设计高级选项 181
5.3 索引设计 187
5.3.1 索引的优点 187
5.3.2 索引类型 188
5.3.3 索引结构 191
5.3.4 理解索引的访问机制 193
5.3.5 创建集群索引 196
5.3.6 创建双向索引 197
5.3.7 完全索引访问(index access only) 198
5.3.8 创建索引示例 199
5.3.9 索引总结 205
5.4 使用序列提高性能 207
5.4.1 应用程序性能和序列 207
5.4.2 序列的设计原则 208
5.4.3 维护序列 209
5.4.4 比较序列与标识列 213
5.5 视图 215
5.5.1 视图的类型 215
5.5.2 创建with check option视图 219
5.5.3 维护视图 220
5.6 表表达式 221
5.6.1 嵌套的表表达式 221
5.6.2 公用表表达式 221
5.7 触发器设计 223
5.7.1 触发器的类型 223
5.7.2 触发器创建示例 225
5.7.3 触发器设计总结 227
5.8 例程 228
5.9 本章小结 229
第6章 数据移动 231
6.1 数据移动格式 231
6.1.1 定界ascii文件格式 232
6.1.2 非定界ascii文件格式 232
6.1.3 pc/ixf文件格式 233
6.1.4 工作表文件格式 233
6.1.5 游标 233
6.2 export 234
6.2.1 export概述 234
6.2.2 导出数据 234
6.2.3 导出数据示例 237
6.3 import 238
6.3.1 import概述 238
6.3.2 导入数据 238
6.3.3 导入示例 244
6.4 load 246
6.4.1 load概述 246
6.4.2 装入数据 247
6.4.3 装入示例 255
6.4.4 在线load 259
6.4.5 监控load进度 262
6.4.6 load期间和之后的表空间状态 263
6.4.7 使用cursor文件类型移动数据 266
6.4.8 提高load性能 267
6.4.9 load失败恢复 272
6.4.10 load和import的比较 275
6.5 数据移动的性能问题 276
6.6 db2move和db2look 277
6.6.1 数据库移动工具――db2move 278
6.6.2 db2 ddl提取工具――db2look 280
6.6.3 利用db2move和db2look移动数据的案例 280
6.6.4 带copy操作的db2move实用程序 284
6.7 本章小结 289
第7章 数据库备份与恢复 291
7.1 恢复的概念 291
7.1.1 崩溃恢复(crash recovery) 295
7.1.2 灾难恢复(disaster recovery) 296
7.1.3 版本恢复(version restore) 296
7.1.4 前滚恢复(rollforward recovery) 297
7.2 db2日志 299
7.2.1 日志文件的使用 300
7.2.2 日志类型 302
7.2.3 日志相关配置参数 305
7.2.4 数据库日志总结 306
7.2.5 db2日志的建议设置 308
7.3 数据库和表空间备份 310
7.3.1 数据库备份 310
7.3.2 表空间备份 312
7.3.3 增量备份 312
7.3.4 检查备份完整性―― db2ckbkp 314
7.4 数据库和表空间恢复 316
7.4.1 数据库恢复 316
7.4.2 表空间恢复 318
7.4.3 增量恢复 321
7.4.4 增量恢复检查―― db2ckrst 322
7.4.5 重定向恢复 322
7.4.6 恢复已删除的表 325
7.5 数据库和表空间前滚 329
7.5.1 数据库前滚 329
7.5.2 表空间前滚 331
7.6 recover实用程序 334
7.7 恢复历史文件 338
7.8 数据库重建 341
7.8.1 数据库重建的概念 341
7.8.2 使用表空间备份重建可恢复数据库 341
7.8.3 只使用部分表空间备份重建可恢复数据库 344
7.8.4 使用包含日志文件的在线备份重建数据库 346
7.8.5 使用增量备份映像重建可恢复数据库 346
7.8.6 使用重定向选项重建可恢复数据库 347
7.8.7 重建不可恢复数据库 348
7.8.8 数据库重建的限制 348
7.9 监控备份、复原和恢复进度 349
7.10 备份、恢复和复原期间的表空间状态 350
7.11 优化备份、复原和恢复性能 350
7.12 备份恢复最佳实践 352
第8章 sql基础知识 355
8.1 简单查询入门 355
8.1.1 select和from 356
8.1.2 where 356
8.1.3 order by 356
8.1.4 group by和having 357
8.2 搜索条件 358
8.2.1 谓词种类 358
8.2.2 基本谓词 358
8.2.3 量化谓词 359
8.2.4 between、exists和in谓词 360
8.2.5 like谓词 360
8.2.6 null谓词 361
8.3 数据操作语言 361
8.3.1 insert 361
8.3.2 delete 362
8.3.3 update 363
8.3.4 merge 364
8.4 多表查询 366
8.4.1 join连接 366
8.4.2 集合运算 367
8.5 高性能的sql语句 369
8.5.1 高效sql的准则 369
8.5.2 提高插入性能的准则 371
8.5.3 复杂查询的准则 372
8.5.4 索引的注意事项 373
8.6 本章小结 374
第9章 db2基本监控方法 375
9.1 监控工具概述 375
9.2 快照监视器 377
9.3 利用表函数监控 382
9.4 性能管理视图及案例 385
9.5 快照监视器案例 391
9.5.1 监控案例1――动态 sql语句 391
9.5.2 监控案例2――通过表函数监控 393
9.5.3 编写快照监控脚本 395
9.5.4 db2pd及监控案例 396
9.5.5 事件监视器及监控案例 403
9.5.6 db2mtrk及监控案例 407
9.6 本章小结 410
第10章 运行数据库必须考虑的数据库设置 411
10.1 数据库配置参数概述 411
10.2 通信设置 413
10.3 内存有关的设置 415
10.4 锁有关的设置 421
10.5 日志相关的配置 426
10.6 自动维护相关的配置 431
10.7 监控相关的配置 432
10.8 安全相关的设置 434
10.9 供参考的db2上线前设置 434
10.10 本章小结 437
第11章 dba日常运行维护 439
11.1 统计信息更新 439
11.1.1 统计信息的重要性 440
11.1.2 减小runstats对系统性能影响的策略 447
11.1.3 db2自动统计信息收集 448
11.2 统计信息更新案例分析 451
11.2.1 runstats更新示例 451
11.2.2 收集分布式统计信息 452
11.2.3 包含频率和分位数统计信息的runstats 453
11.2.4 包含列组统计信息的runstats 455
11.2.5 包含 like statistics 的runstats 455
11.2.6 包含统计信息配置文件的runstats 456
11.2.7 带有抽样的runstats 456
11.2.8 带有系统页级抽样的runstats 457
11.2.9 收集统计信息的其他可供选择的方法 458
11.2.10 runstats总结 459
11.3 碎片整理 459
11.3.1 表重组(reorg) 460
11.3.2 索引重组 468
11.3.3 重组表和索引的成本 474
11.3.4 合理设计以减少碎片生成 475
11.3.5 启用表和索引的自动重组 476
11.4 碎片整理案例分析 477
11.4.1 执行表、索引检查是否需要做reorg 477
11.4.2 表和索引碎片整理 478
11.5 案例:生成碎片检查、统计信息更新、碎片整理和 rebind脚本 479
11.6 重新绑定程序包 479
11.7 db2健康检查 481
11.7.1 查看是否有僵尸实例进程 481
11.7.2 检查数据库是否一致 482
11.7.3 查找诊断日志以判断是否有异常 482
11.7.4 检查数据库备份完整性、日志归档是否正常 482
11.7.5 维护实例目录和数据库目录的权限 485
11.7.6 查看磁盘空间 485
11.8 数据库监控 486
11.8.1 监控工具 486
11.8.2 计算数据库的大小 488
11.8.3 监控表的物理大小 488
11.8.4 监控单个索引的大小 488
11.8.5 监控数据库实用工具的进度 489
11.8.6 监控数据库crash recovery进度 489
11.8.7 监控catalog cache命中率 489
11.8.8 监控package cache命中率 489
11.8.9 监控排序溢出率 489
11.8.10 监控正在reorg的表 489
11.8.11 监控缓冲池命中率 489
11.8.12 监控高成本应用程序 490
11.8.13 监控正在执行的时间最长的sql语句 490
11.8.14 监控sql准备和预编译时间最长的sql语句 490
11.8.15 监控执行次数最多的sql语句 491
11.8.16 监控执行时间最长的sql语句 491
11.8.17 监控排序次数最多的sql语句 491
11.8.18 监控引起锁等待的sql语句 491
11.8.19 查找新创建的对象 491
11.8.20 查找无效对象 492
11.8.21 检查表空间状态 492
11.8.22 检查表状态 493
11.8.23 查找需要reorg的表和索引 493
11.8.24 查找需要runstats的表和索引 494
11.8.25 定期清理db2diag.log文件 495
11.8.26 查找异常增长的表空间和表 495
11.8.27 数据库维护总结 496
第12章 数据库常用工具 499
12.1 解释工具 499
12.1.1 visual explain(可视化解释) 499
12.1.2 db2expln 507
12.1.3 db2exfmt 510
12.1.4 各种解释工具的比较 511
12.1.5 如何从解释信息中获取有价值的建议 512
12.2 索引设计工具(db2advis) 513
12.2.1 db2 design advisor(db2advis) 513
12.2.2 db2 design advisor(db2advis)案例讲解 514
12.3 基准测试工具db2batch 517
12.3.1 db2batch 517
12.3.2 db2batch基准程序测试分析示例 519
12.4 数据一致性检查工具 520
12.4.1 db2dart及案例 520
12.4.2 inspect及案例 521
12.5 db2look 522
12.5.1 db2look概述 522
12.5.2 利用db2look构建模拟测试数据库 524
12.6 其他工具 526
12.6.1 db2bfd 526
12.6.2 db2_kill和db2nkill 527
12.6.3 db2tbst 527
12.7 本章小结 528
第13章 db2 v10.1新特性 529
13.1 分身大法――purescale 529
13.1.1 基本介绍 529
13.1.2 安装和管理 532
13.1.3 性能监控 537
13.2 九阴白骨爪――continue data ingest 541
13.2.1 continue data ingest介绍 541
13.2.2 cdi 实际操作案例 544
13.3 缩骨大法――自适应压缩 553
13.3.1 基本介绍 553
13.3.2 自适应压缩的工作方式 554
13.3.3 启用或禁用自适应压缩 554
13.3.4 评估表压缩率 555
13.3.5 经典行压缩和自适应压缩的对比测试 557
13.3.6 归档日志压缩 566
13.4 乾坤大挪移――灾备功能增强 567
13.4.1 基本介绍 567
13.4.2 超级异步 567
13.4.3 假脱机日志 570
13.4.4 重做延迟 570
13.4.5 多备机 572
13.4.6 监控指标 573
13.5 凌波微步――性能增强 574
13.5.1 提高了一组常用sql语句的查询性能 574
13.5.2 runstats支持索引采样 575
13.5.3 优化概要文件能支持注册表变量和非精确匹配 575
13.5.4 统计视图改进了统计信息以及查询优化器的统计信息收集 576
13.5.5 分区内并行性改进 576
13.5.6 通过更有效地进行数据和索引预取来提高查询性能 578
13.5.7 提高了对具有组合索引的表执行的查询的性能 579
13.5.8 提高了基于星型模式的查询的性能 580
13.6 火眼金睛――监控增强 581
13.6.1 用于跟踪配置更改的事件监视器 581
13.6.2 用法列表对象记录影响表或索引的语句 583
13.6.3 使用新的statement阈值域为特定语句创建阈值 585
13.6.4 用于访问监视信息的新函数和已更改的函数 588
13.6.5 工作单元事件监视器捕获的信息中现在包括的可执行标识列表 589
13.6.6 使用alter event监视器语句修改事件监视器捕获的信息作用域 589
13.6.7 其他监控增强 590
13.7 金钟罩――安全功能增强 591
13.7.1 rcac特点 591
13.7.2 rcac规则 592
13.7.3 rcac实战 592
13.8 本章小结 593
DB2数据库是IBM公司关系型数据库核心产品,在国内以及全球有着广泛的应用。针对DB2初学者,本书循序渐进地把DB2涉及的众多概念和知识介绍给大家。客户端连通性、实例、数据库、表空间和缓冲池、数据移动、备份恢复、SQL基础知识、DB2基本监控方法、运行数据库必须考虑的设置、DBA日常维护以及数据库常用工具都是本书关注的重点。在介绍这些数据库对象和概念的同时,作者尽可能从DBA日常工作的角度探究DB2数据库常规维护工作。本书同时还就表、索引、序列、触发器等数据库对象从应用设计的角度进行了介绍。本书适合DB2的初学者、DB2开发人员、准备参加DB2认证考试的读者以及DB2数据库管理人员学习和阅读。
本书共13章,具体结构如下:
第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章:SQL基础知识。本章针对初学者,介绍了DB2中使用的SQL语言的基本功能和特点,由于篇幅有限,只介绍了最常用的DML(Data Manipulation Language)和DDL(Data Define Language)的语法和示例。最后用较短的篇幅介绍了DB2中使用SQL的一些最佳实践。
第9章:DB2基本监控方法。DB2数据库给出了多种手段用于监控数据库的内部运行情况,如事件监控、快照监控、动态性能视图等。本章主要介绍了实践中使用较多的快照监控,给出了许多生产中的实际案例。
第10章:运行数据库必须考虑的数据库设置。在安装、设计完数据库后,并将数据库投入生产环境运行之前,我们必须考虑很多影响数据库运行的设置,否则数据库可能无法运行,可能运行一段时间后将出现各种问题。本章按不同的主题,列出了必须考虑的设置。
第11章:DBA日常运行维护。DBA的职责是保证数据库稳定、高效运行,除了正常的运行维护外,DBA还经常碰到各种其他问题,本章主要介绍了作者在日常工作中进行的维护工作。本章首先介绍了如何对DB2数据库进行健康性检查以及检查涉及的各个方面,然后给出了找出各种类型的TOP10的SQL语句方法。
第12章:数据库常用工具。本章介绍了DBA在日常工作中经常使用的各种工具,如性能解释工具、数据设计建议工具、基准测试工具、数据库一致性检查工具等。熟练掌握这些工具,对DBA而言犹如利器在手。
第13章:DB2 V10.1新特性。本章分类介绍DB2 V10.1版本提供的各种新功能、新特性,为以后我们开始使用这一新版本提供好的开始。
本书在出版的过程中得到了清华大学出版社王军编辑的大力支持!这套DB2书籍从选题、审稿到出版无不得到他的热心帮助,在此致以深深的谢意!
感谢我的好兄弟骆洪青和袁春光,他们审核了书中的大部分章节,同时也感谢中信银行的胡瑞娟、苏兰芳和我的师弟林春,他们审核了部分章节并从用户的角度给我提出了很多宝贵的建议!
最后,谨以此书献给我慈爱的母亲,母亲从小就教育我努力、正直、踏实和勤奋。正是由于母亲的影响和教育才有了我今天的一点微小的成绩。
新庄是IBM的老朋友,也是我的老朋友了。虽然我们的见面次数并不多,但我深感他是一位非常优秀的技术专家和管理者。尤其是在技术方面,他有自己的独特见地,在IT软件、硬件及解决方案方面都涉猎很广。另外,他本人也很亲和,具有技术专家的风范。
在最近一次交流中,他跟我提起他打算把之前出版的三本DB2系列书籍进行全面版本升级,我感到非常钦佩和欣喜。他在繁忙的日常工作之余,还能利用业余时间完成三本书籍的撰写和更新,足以证明新庄的勤奋和对技术的热爱。同时我也欣喜广大的技术爱好者能有机会一饱技术大家的分享和心得。
他把他的新书送给我,我先粗略读了一遍,更详细的内容留待以后的时间里细细品味。他的这三本书籍将帮助数据库爱好者和企业数据库实践者由浅入深地学习DB2。即使在网络日益普及的今天,对于一名DB2技术工作者来说,通过书籍来系统化地进行学习同样很关键。
在我看来,阅读他的书籍有三个最特别之处:
第一,他是第一位出版DB2系列中文书籍的作者,随着这么多年书籍的广泛传播,他在此基础上再次升级更新,结合了非常多的读者反馈,增加了很多近几年读者关注和遇到的问题,这个非常难得。
第二,他所在单位的核心数据库就是DB2,本次书籍的升级纂写,也更多结合了他的实战经验,这将极大帮助更多企业在应用DB2数据库时借鉴和学习。
第三,很多的技术书籍是由专注于技术的工作者纂写,而新庄同时还是非常重要的技术管理和实践者。站在管理者的角度纂写的技术书籍更是融合了管理者如何看待技术的处理和看待问题的视角。
这几本书综合来看,也体现了一个技术管理者乐于分享的心意,这一点是最难得的。
最后,让我表达对新庄的敬意和谢意,感谢他对推动中国的信息化建设和技术的普及所作出的贡献!希望广大的技术爱好者和技术管理者好好品味这些书籍,相信你们一定能从中获益匪浅!
IBM全球副总裁兼IBM软件集团大中华区总经理 胡世忠
自1970年IBM公司研究员E.F.Codd博士,即“关系数据库之父”,发表业界第一篇关于关系数据库理论的论文A Relational Model of Data for Large Shared Data Banks以来,伴随着DB2的诞生,IBM公司涌现出了一批优秀的数据库技术领域先驱科学家,并获得了一系列数据库领域大奖,比如在1981年荣获了计算机科学界的最高荣誉――ACM图灵奖。在此之后,数据库管理软件在企业中得到广泛应用,业务流程自动化得以实现,对日常的工作和生活带来了深远的影响。
随着近年来云计算、大数据、移动以及社交信息技术的发展,数据技术也正在经历深刻的变革,处于一个全新计算时代的最前沿。我们能够观察到这样一个趋势:数据库的 24×7 高可用性、高可伸缩性,企业处理海量信息的方式将趋于实时,并从根本上转变业务运作的模式。客户在数据处理速度、简化程度和成本控制等方面需要更上一层楼。最新版的DB2 V10.1能带来更低的存储要求以及更高的响应速度,并添加了对大数据管理(如Hadoop)的支持。更具创新性的PureData也在这样的技术潮流中应运而生,它整合了基础架构、统一平台管理和专家知识体系,能够以不同的配置分别提供OLTP(联机事务处理)、OLAP(联机分析处理)和大数据分析操作的能力。
今天的企业用户希望他们的数据库能够可靠高效地运作,并推动业务发展。当我们把目光放到中国,就会看到,DB2已成为各行业大型应用系统的支柱产品。但是因DB2而闻名业界的本土技术专家,并不多见。
认识新庄是在今年8月北京举办的“IBM软件技术峰会”上。在中国的数据库技术领域,他是许多年轻人的楷模。新庄的成长令人欣喜,新庄对技术和实践的孜孜不倦令人印象深刻。这套DB2书籍得益于他历年的钻研及实践,对DB2初学者、DB2管理员以及资深从业者,都有非常好的指导及参考价值。祝愿每一位读者能有所得、有所悟,成长为新一代的数据技术专家,也祝愿新庄在数据技术领域这条康庄大道上走得更宽更远。
IBM全球副总裁兼IBM中国开发中心总经理 王阳
第1章DB2介绍和安装
DB2 LUW(IBM DB2 Database for Linux、UNIX and Windows,本后续章节中,本书统一简写为DB2)是IBM于1983年推出的第一款面向大型企业的商业化关系数据库管理系统。在20世纪80年代初,DB2的发展重点放在大型的主机平台,从80年代中期到90年代初,DB2已发展到中型机、小型机以及微机平台。DB2的诞生不仅促进了与关系数据库概念相关的数学和科学的发展,还创造性地开发出一种极具影响力的全新软件类型。今天,DB2已经发展成为IBM信息管理(IM)软件组合的重要组成部分。在IBM信息随需应变策略和体系结构中,DB2扮演数据基础服务平台的重要角色,并且已经发展成同时支持传统关系数据和XML的混合型数据服务器。传承IBM数据库的优良传统并具有突破性的数据库产品DB2 LUW V10.1已经于2012年4月份问世,它在原有V9版本的基础上,增加了众多革命性的技术,使DB2 LUW产品在多个领域实现了突破。
DB2数据库产品及解决方案广泛应用在金融、电信、制造、零售、保险等行业及政府机关,以数据库技术创新帮助客户实现更大价值,以技术创新推动商业模式的变革和不断发展。
本章主要讲解如下内容:
DB2数据库概述
DB2数据库的安装和配置
DB2数据库的体系结构
1.1 DB2数据库概述
1.1.1 DB2发展历史
我们都知道DB2是关系型商用数据库的一种,那么在开始学习DB2之前,先来了解一下数据库的发展历史。
1. 数据库的发展历史
在没有数据库之前,人们靠什么来记录数据呢?最早是靠文件,但是用文件记录有很多缺点,例如不易保存和共享等,而数据库的出现可以解决这些问题。数据库的历史可以追溯到40多年前,当时计算机开始广泛地应用于数据管理,对数据的共享提出了越来越高的要求。传统的文件方式已经不能满足人们的需要。能够统一管理和共享数据的数据库管理系统(DBMS)应运而生。数据模型是数据库系统的核心和基础,各种DBMS软件都是基于某种数据模型的。所以通常也按照数据模型的特点将传统数据库系统分成网状数据库、层次数据库和关系数据库3类。最早出现的是网状DBMS,1961年通用电气公司(General Electric)的Charles Bachman成功地开发出世界上第一个网状DBMS,也是第一个数据库管理系统―― 集成数据存储(Integrated DataStore,IDS),奠定了网状数据库的基础,并在当时得到了广泛的发行和应用。IDS具有数据模式和日志的特征,但它只能在GE主机上运行,并且数据库只有一个文件,数据库所有的表必须通过手工编码来生成。网状数据库模型对于层次和非层次结构的事物都能比较自然地模拟,在关系数据库出现之前,网状DBMS要比层次DBMS用得普遍。在数据库发展史上,网状数据库占有重要地位。层次DBMS是紧随网状DBMS而出现的。最著名、最典型的层次数据库系统是IBM公司在1968年开发的IMS(Information Management System)―― 一种适合其主机的层次数据库。这是IBM公司研制的最早的大型数据库系统产品。从20世纪60年代末产生起,如今已经发展到IMS V10,提供对群集、N路数据共享、消息队列共享等先进特性的支持。这个具有40年历史的数据库产品在如今的WWW应用连接、商务智能应用中仍扮演着新的角色。目前国内的4大银行在主机上仍然在使用IMS数据库。
关系数据库
关系数据库的由来:网状数据库和层次数据库已经很好地解决了数据的集中和共享问题,但是在数据独立性和抽象级别上仍有很大欠缺。用户在对这两种数据库进行存取时,仍然需要明确数据的存储结构,指出存取路径,而后来出现的关系数据库较好地解决了这些问题。1970年,IBM的研究员E.F.Codd博士在刊物Communication of the ACM上发表了一篇名为“A Relational Model of Data for Large Shared Data Banks”的论文,提出了关系模型的概念,奠定了关系模型的理论基础。尽管之前在1968年Childs已经提出了面向集合的模型,然而这篇论文被普遍认为是数据库系统历史上具有划时代意义的里程碑。Codd的心愿是为数据库建立优美的数据模型。后来Codd又陆续发表多篇文章,论述了范式理论和衡量关系系统的12条标准,用数学理论奠定了关系数据库的基础。IBM的Ray Boyce和Don Chamberlin将Codd关系数据库的12条准则的数学定义以简单的关键字语法表现出来,里程碑式地提出了SQL(Structured Query Language)语言。关系模型有严格的数学基础,抽象级别比较高,而且简单清晰,便于理解和使用。但是当时也有人认为关系模型是理想化的数据模型,用来实现DBMS是不现实的,尤其担心关系数据库的性能难以接受,更有人视其为当时正在进行中的网状数据库规范化工作的严重威胁。为了促进对问题的理解,1974年ACM牵头组织了一次研讨会,会上开展了一场分别以Codd和Bachman为首的支持和反对关系数据库两派之间的辩论。这次著名的辩论推动了关系数据库的发展,使其最终成为现代数据库产品的主流。而Oracle公司在1979年开发了第一个商用SQL关系数据库管理系统。关系数据库系统以关系代数为坚实的理论基础,经过几十年的发展和实际应用,技术越来越成熟和完善,代表产品有Oracle、DB2、SQL Server以及Informix、Sybase等等。
面向对象数据库
随着信息技术和市场的发展,人们发现关系数据库系统虽然技术很成熟,但其局限性也是显而易见的―― 它能很好地处理所谓的“表格型数据”,却对技术界出现的越来越多的复杂类型的数据无能为力。20世纪90年代以后,技术界一直在研究和寻求新型数据库系统。但在什么是新型数据库系统的发展方向的问题上,产业界一度是相当困惑的。受当时技术风潮的影响,在相当一段时间内,人们把大量的精力花在研究“面向对象的数据库系统(Object-Oriented Database)”或简称“OO数据库系统”。值得一提的是,由美国Stonebraker教授提出的面向对象的关系数据库理论曾一度受到产业界的青睐。而Stonebraker本人也在当时被Informix花大价钱聘为技术总负责人。然而,数年的发展表明,面向对象的关系数据库系统产品的市场发展情况并不理想。理论上的完美性并没有带来市场的热烈反应。其不成功的主要原因在于,这种数据库产品的主要设计思想是企图用新型数据库系统来取代现有的数据库系统。这对许多已经运用数据库系统多年并积累了大量工作数据的客户,尤其是大客户来说,是无法承受因为新旧数据间的转换而带来的巨大工作量及巨额开支的。另外,面向对象的关系数据库系统使查询语言变得极其复杂,从而使得无论是数据库的开发商还是应用客户,都视其复杂的应用技术为畏途。
混合数据库
IBM经过多年的积累和持续创新,在2006年年底率先推出了第一个直接支持XML的混合数据服务器―― IBM DB2 V9(代号为Viper)。
IBM DB2 V9提供了与以前版本非常不同的体系结构,它通过提供新的查询语言、新的存储技术、新的索引技术和支持XML数据及其固有层次结构的特性,使得IBM DB2 V9成为IBM的第一个“混合型”(即多结构)数据库管理系统。除了支持表数据模型外,DB2还支持XML文档和消息中固有的层次化数据模型。用户可以在表中自由地混合存储传统SQL数据和最新的XML数据。还可以使用SQL(如果愿意,可以加上XML扩展)和XQuery(新出现的XML数据查询标准)来查询和处理这两种形式的数据。在经过实践检验的数据库管理基础设施上进行扩展,IBM为DB2 V9用户提供了同时处理关系数据和XML 数据的强大支持。新的基于XML的应用程序使用DB2可以无缝地访问关系数据库资源,拥有企业级XML应用的访问能力。DB2在所有特性/接口中都整合了对XML数据的支持,而DB2对XML的“固有”支持是在对其他技术的现有支持之外提供的,SQL、表格数据结构和各种 DBMS现有特性仍然能够获得最好的支持。因此,用户可以用一个数据库对象同时管理“传统的”SQL数据和XML文档。
为了高效地管理传统SQL数据类型和XML数据,DB2包含两种不同的存储机制。但是,一定要注意,给定数据类型所用的底层存储机制对于应用程序是透明的。换句话说,应用程序不需要显式地指定要使用的存储机制,也不需要管理存储的物理细节,比如如何将 XML 文档的各个部分拆分到多个数据库页上。系统会自动采用适合目标数据的格式,应用程序自然而然地获得存储和查询数据方面的运行时性能优势。DB2 V9的存储模型如图1-1所示。
. 图1-1 DB2 V9的存储模型
2. 数据库大事年鉴
1969年:IBM开发的层次数据库IMS诞生。这是IBM公司的第一代数据库,也叫DB1。
1970年:IBM的E.F.Codd发表了关于关系数据库技术的第一篇论文“基于大型共享数据库的数据关系模型”。
1973年:在IBM研究中心确立了System R项目,建立关系数据库管理系统。
1974年:IBM的Don Chamberlin和Ray Boyce发表了“EQUEL:结构化英语查询语言”,成为SQL标准定义的基础。
1975年:IBM的Don Chamberlin和Morton Astrahan发表的论文――“结构化英语查询语言的实现”阐述了作为System R一部分的第一个SQL实现。
1976年:IBM System R团队发表了“System R:数据库管理的关系方法”,这篇论文阐述了他们的关系数据库原型。IBM的Jim Gray发表的“共享数据库中的锁粒度和结合度”,阐述了数据库事务和结合度的正式定义,这是数据库并发理论的基础。
1979年:IBM的Pat Selinger 在她的论文“关系数据库管理系统中的访问路径选择”中阐述了行业的第一个关系查询优化器,这是DB2数据库优化器的雏形。
1979年:Oracle公司开发了第一个商用SQL关系数据库管理系统。
1980年:在一家早期的S-100/CP/M公司Cromemco工作的Roger Sippl和Laura King开发了一个基于ISAM技术的小型关系数据库,作为一款报表记录器软件的一部分。1980年,Sippl和King离开Cromemco去开发关系数据库系统(RDS)。1981年发布了他们自己的产品――Informix(INFORMation on unIX)。
1982年:IBM为VSE/VM发布SQL/DS,作为第一个商业用途的关系数据库(带有基于System R的SQL接口)。SQL/DS是DB2数据库的前身。
1984年:Sybase公司成立,公司名称“Sybase”取自“system”和“database”相结合的含义。Sybase公司的创始人之一Bob Epstein是Ingres大学版(与System/R同时期的关系数据库模型产品)的主要设计人员。Sybase公司的第一个关系数据库产品是1987年5月推出的Sybase SQLServer 1.0。Sybase首先提出Client/Server数据库体系结构的思想,并率先在Sybase SQLServer中实现。
1988:SQL Server由微软与Sybase共同开发,最早运行于OS/2平台。所以您会发现SQL Server和Sybase数据库早期的架构基本上一样。直到SQL Server 2005以后,微软才做了大幅度改动。
1.1.2 DB2版本和平台支持
1. DB2平台支持
如图1-2所示,DB2产品几乎覆盖了当前所有流行的硬件和操作系统平台。在大型机操作系统上,DB2 for z/OS (DB2 for OS/390、DB2 for MVS/ESA、DB2 for VM/VSE)利用了 System z服务器上的硬件耦合器(Coupling Facility),因此与使用“shared-nothing”方式的DB2 LUW相反,它采用“shared-everything”方式。
图1-2 DB2支持的平台
在由IBM公司设计的中型机上(AS/400),有DB2 for System i,DB2已经嵌入在i5/OS 操作系统中,成为其不可分割的一部分。DB2对UNIX操作系统的支持同样十分广泛,可以在AIX、HP-UX、Solaris等多种系统上找到相应的版本。
在PC操作系统上,DB2可以对Windows 9x、Windows NT、Windows XP以及Windows Vista等多种操作系统提供支持。同样,DB2从版本6.1后也增加了对Linux的支持。
以上我们提到的只是DB2服务器所能运行的平台,DB2的客户端所能支持的平台更为广泛,除了以上提到的所有平台之外,DB2的客户端还能运行在DOS、Windows 3.x、Mac OS以及SGI公司的IRIS系统之上。综上所述,DB2数据库服务器对平台的支持主要有3种:DB2 for z/OS大型机平台、DB2 for i5/OS中型机平台和DB2 for LUW (DB2 for Linux、DB2 for UNIX和DB2 for Windows)开放平台。最早的 DB2产品是DB2 for MVS/ESA,以后的产品设计都延续了它的基本结构及关键算法,保证了不同系统之间的可移植性、可扩展性和互操作性。但是,由于不同操作系统之间存在着不小的差异,DB2系列产品还针对相应的平台进行了一定优化,以适应各个操作系统的特性。在本书我们主要讲解DB2 for LUW平台。
以后在本书中我们要提及的DB2,如无特别说明指的是DB2 for LUW平台。
2. 版本支持
DB2产品除了能够对各种硬件和操作系统平台进行支持之外,DB2 V9提供了适于所有企业的数据管理解决方案。为了适应不同规模企业和用户的需要,DB2提供了不同级别的产品,对小到个人用户、大到跨国企业的不同需求提供支持。没有其他数据库管理系统能够在性能、可用性、可伸缩性和可管理性方面达到DB2 V9的水平。
DB2有不同的版本,每种版本适合不同需求的用户。图1-3显示了所有可用的DB2分发版本。从图中可以看出,DB2的每个高版本都包含低一级版本的所有功能和特性,并添加了新的特性和功能。Linux、UNIX和Windows(LUW平台)上的代码有大约 90%是相同的,在每种操作系统上有10%的专用代码,用于使数据库与底层操作系统紧密地集成。例如,使用AIX上的JFS2文件系统或Windows上的NTFS文件系统。
图1-3 DB2版本分类
以下是对DB2 V9版本中不同级别产品的特点介绍:
DB2 V9为各种类型的业务提供了正确的数据管理解决方案。提供封装了众多特性和功能的不同产品版本,以适应大量来自客户的不同需求。小型企业可以选择Express Edition,中型企业可以选择Workgroup,而Enterprise Edition则适合大型企业。除了这些版本,DB2 V9 另外提供了两个版本:Personal Edition和面向开发的Developer Edition,以及免费版DB2 Express-C。表1-1描述了DB2 V9可用的版本。
表1-1 DB2 V9版本和平台支持
DB2 V9分发版本
DB2 Express Edition V9 for Linux、UNIX and Windows
DB2 Express V9是功能完备的DB2数据服务器,它为中小企业(Small and Medium Business,SMB)市场提供了极具吸引力的入门级价格。该版本提供了经简化的程序包,可在应用程序内轻松进行透明安装。DB2 Express V9可以轻松升级到DB2 V9的其他版本,它还具有和其他可伸缩性更高的版本相同的自主管理特性。DB2 Express V9合并了本地XML数据存储,并允许使用XQuery、XPath、SQL和标准报告生成工具来灵活地访问XML数据
DB2 V9分发版本
DB2 Workgroup Server Edition V9 for Linux、UNIX and Windows
DB2工作组服务器版用来满足数据服务器部署工作组或中型业务环境的需要。DB2工作组服务器版包含了本地XML数据存储,并允许使用XQuery、XPath、SQL和标准报告生成工具来灵活地访问XML 数据
DB2 Enterprise Server Edition (ESE) V9 for Linux、UNIX and Windows
DB2企业服务器版用来满足数据服务器处理大中型业务的需要。可以将它部署在任意大小(从一个 CPU到任意数目的CPU)的Linux、UNIX或Windows服务器上。DB2企业服务器版是用于构建随需应变的企业级解决方案的理想平台,这些解决方案的示例如下:大小为TB级的大型数据仓库,高性能(每周7天,每天24小时全天候运行)的高容量事务处理业务解决方案,或是基于Web的解决方案。DB2企业服务器版包含本地XML数据,并允许使用XQuery、XPath、SQL和标准报告生成工具来灵活地访问XML数据。DB2企业服务器版具有可选功能部件,用来在诸如数据库分区、性能、安全性、数据联合以及数据库管理方面提供附加的高级产品功能。此外,DB2 ESE V9还提供了与其他 Enterprise DB2和Informix数据源的连通性、兼容性以及集成
DB2 Enterprise Server Edition (ESE) V9 for Linux、UNIX and Windows With DPF
DB2 ESE V9 With DPF可以构建分区数据库,可以构建基于MPP的集群结构,主要应用于高性能计算领域,例如数据仓库、科学计算、人工智能等
DB2 Personal Edition for Linux、UNIX and Windows
DB2 Personal V9是单用户、功能完备、具有内置复制的关系数据库。对于基于桌面和膝上型电脑的部署是理想选择。DB2 Personal V9可以进行远程管理,这使其成为在不要求多用户能力的不定期连接或远程办公实现中的最佳部署选择
Database Enterprise Developer Edition
此版本为单一应用程序开发人员提供软件包,用于设计、构建和原型化应用程序,以在任意IBM信息管理客户端或服务器平台上部署。可以面向DB2所有平台的开发。用于DB2的一组应用程序驱动程序包括嵌入式 SQL、ODBC/CLI、JDBC/SQLJ、OLEDB、.NET、PHP、Perl和Ruby。数据访问和管理工具提供了DB2控制中心(Windows和Linux)和DB2命令行处理器(CLP)
DB2 Express-C
DB2 Express-C是为社区提供的DB2 Express Edition(DB2 Express)的版本之一。DB2 Express-C是免费的数据服务器,可用于开发和部署XML、C/C++、Java、.NET和PHP应用程序。DB2 Express-C 最多可运行在双核CPU、4GB内存的服务器上,以及对数据库规模或其他人为限制没有要求的任何存储系统
关于这些版本的详细许可协议超出了本书讨论的范围,但是需要注意每个版本的功能特性是不一样的。某些实用程序和功能仅在特定DB2数据库产品版本中可用。在某些情况下,实用程序或功能与特定DB2功能部件相关联,如果DB2 Express或DB2 Workgroup中没有免费包含某一功能,那么(在大多数情况下)可以通过附加的功能部件(Feature Pack)购买这一功能。
DB2的分发版本就像我们使用Windows XP操作系统一样,有Windows Home Edition、Windows XP Professional Edition和Windows XP 64-Bit Edition等版本,每个版本包含的功能不一样,用户可根据自己的需求来决定使用什么版本。本书的内容主要针对DB2 V9.7版本,对于其他版本,如有不同之处,本书会给予特别说明。本书所附示例也都经过DB2 V9.7版本的验证。
1.1.3 DB2产品组件和功能
DB2数据库的产品组件如图1-4所示。
图1-4 DB2产品组件
DB2 Engine
DB2 Engine是整个数据库系统的核心,提供了DB2的基本功能。DB2引擎类似汽车的发动机,负责管理和控制对数据的存取;负责生成程序包(存储存取计划的数据库对象);提供事务的管理;保障数据的完整性和数据保护;提供应用程序并发控制。数据库引擎(DB2 Engine)设计的完善与否,决定了数据库系统是否稳定和高效。DB2 Engine是所有数据库中最强大的数据库引擎。
DB2 V9大大简化了将应用程序连接到DB2数据库所需的基础设施的部署。DB2 V9提供以下客户机:
DB2 V9 Runtime Client (DB2 RTCL)
如果只需要让应用程序能够访问DB2 V9数据服务器,那么这就是最佳选择。它们提供了执行此任务所需的API,但是这种客户机没有提供管理工具。DB2 运行时客户机(DB2 Runtime Client)的前身为CAE(Client Application Enabler),是所有DB2产品所共用的部件,它允许远程应用程序对数据库服务器进行存取。在这个组件中包含了CLP(Command Line Processor),允许用户动态地执行SQL语句和DB2命令,对本地和远程的数据库服务器进行存取。另外,Runtime Client还提供了对ODBC和JDBC的支持,允许用户开发的ODBC或JDBC应用程序对数据库进行存取。要想对数据库服务器进行存取,Runtime Client几乎是必不可少的(在WWW上通过Java Applet存取是唯一的例外)。
DB2运行时客户机为运行各种平台的工作站提供了访问DB2数据库的能力,它只提供基本连通性―― 不多不少刚刚好。如果要建立到远程DB2服务器或DB2连接网关(Connect Gateway,可帮助访问类似DB2 for z/OS的大型机或主机系统上的DB2)的连通性,那么至少必须使用这个客户机。当然,也可以使用任何客户机进行连接。Runtime Client的安装取决于操作系统。比如,如果需要在Windows操作系统上对数据库管理器进行存取,就需要在Windows系统上安装Runtime Client for Windows。
DB2 V9 Client
包含DB2 Runtime Client中的所有功能,还增加了通过一组图形化工具进行客户机-服务器配置、数据库管理和应用程序开发的功能。DB2 V9 Client整合了DB2 V8 Application Development和DB2 V8 Administration Client中的功能(DB2管理客户机(Administration Client)是客户端的管理工具,包含了一系列的图形化工具,用户可以方便地通过这些工具对数据库服务器进行远程管理。关于这些图形化的管理工具,我们在第4章会有比较详细的介绍)。Administration Client的安装也取决于操作系统。这类客户机为各种平台的工作站提供了通过控制中心或配置助手(Configuration Assistant)访问并管理DB2数据库的能力。DB2管理客户机具有DB2运行时客户机的所有功能,并且还包含所有DB2管理工具、文档以及对瘦客户机的支持。DB2应用程序开发客户机(DB2 Application Development Client)是专门为应用程序开发人员提供的,它包含了开发数据库应用程序所需要的各种组件,包括预编译器、Runtime Client、include文件、库函数、样例程序和帮助文档等。
Java Common Client (JCC)
这是2MB的可重新发布的客户机,提供了对DB2数据服务器的JDBC和SQLJ 应用程序访问,而不需要安装和维护DB2客户机代码。如果要连接DB2 for System i或DB2 for System z 数据服务器,那么仍然需要安装DB2 Connect产品。
DB2 V9 Client Lite
这个客户机是DB2 V9中新增的,可以执行与JCC客户机相似的功能,但是不支持对DB2数据服务器进行基于Java的访问,而是用于CLI/ODBC应用程序。这个客户机尤其适合于那些希望将连接功能嵌入应用程序,而不需要重新发布和维护DB2客户机代码的ISV。
通信支持(Communication Support)
通信支持提供了远程客户机支持,客户端应用程序可以通过多种网络协议对数据库服务器进行存取,TCP/IP、SNA(APPC/APPN)、NETBIOS和Name Pipe等协议都可以被DB2所支持。
DB2 Relational Connect,DB2 Data Joiner
DB2 Relational Connect和DB2 Data Joiner通过允许用户和应用程序存取存储在Oracle、Sybase、Informix、SQL Server等数据库中的数据,增强了DB2数据库中所包括的分布式请求功能。它们允许将驻留在多个不同平台上的数据作为单个数据库映像访问,这些数据既可以是IBM的,也可以是其他供应商的;既可以是关系型的,也可以是非关系型的。这可以与内置分布式查询功能一起使用,从而使DB2、Oracle、Sybase、Informix、SQL Server等数据库之间的查询SQL化。这些组件可以帮助企业整合数据,从而加速Oracle、Sybase、Informix、SQL Server等数据库源中的选择性能,以便进行数据集中。
这两个功能今天已经被整合成IBM的一个产品―― WebSphere Information Integrator。
DB2 Connect
许多大型组织中的大量数据由DB2 for i5/OS、DB2 for z/OS 等数据服务器进行管理。有了DB2 Connect的帮助,在任何支持的DB2分布式平台上运行的应用程序都可以透明地操作这些数据,就像是本地数据服务器在管理数据一样。还可以将DB2 Connect及其相关工具与许多现成的或定制开发的数据库应用程序一起使用。DB2 Connect提供了从 Windows、Linux和UNIX开放平台连接大型机和中型机的能力。
DB2 扩展器(DB2 Extender)
DB2扩展器使数据库应用程序能够超越传统的数字和字符数据,为底层数据服务器提供额外的功能。这部分组件是可选的,包括:DB2 XML Extender扩展器(处理XML);DB2 Net Search Extender扩展器可以帮助企业在搜索数据库中的数据时获得更高的性能;DB2 Spatial Extender扩展器可以在DB2中与文本和数字等传统数据一起存储、管理和分析空间数据―― 关于地理特征位置的信息;DB2 Geodetic Extender扩展器可以将地面作为球体对待,从而消除投影等操作造成的不精确。
大家了解这些可选的扩展器即可,通常情况下用不到这些组件。
通过上面的讲解,我们大概了解了DB2数据库的产品组件和功能,其实有些组件我们很少用到,就像DB2 Connect,如果单位里没有大型机或中型机,那么可能不会用到。
另外,IBM在已经发布的DB2 V10.1版本中增加了一些组件和功能,我们会在本书的第16章介绍相关内容。如果关心相关内容,可以直接阅读第16章。
1.2 DB2数据库的安装与配置
在了解完DB2的相关版本和产品组件后,下面开始我们的DB2学习之旅。在学习之前,我们要首先安装DB2数据库,下面讲解如何在不同的平台上安装DB2,这部分内容相对简单,为了节省篇幅,我们把部分图形化界面省去了。
DB2安装方法
表1-2列出了不同操作系统上DB2的安装方法。
表1-2 不同操作系统可用的安装方法
安 装 方 法 Windows Linux或 UNIX
“DB2安装”向导(图形化界面) 是(setup.exe) 是(db2setup)
响应文件安装(静默安装) 是 是
db2_install命令(命令行界面) 否 是(db2_install)
“DB2安装”向导(db2setup)
“DB2安装”向导是可在Linux、UNIX和Windows操作系统上使用的GUI安装程序。“DB2安装”向导提供了易于使用的界面,用于安装DB2产品和执行初始设置与配置任务。Linux/UNIX上启动时需要配置JRE运行环境和X环境。
“DB2安装”向导还可以用来创建DB2实例和响应文件,它们可用于在其他机器上复制此安装。这种安装方法比较简单,一般用得最多。
响应文件安装
响应文件是包含设置和配置值的文本文件。DB2安装程序将读取这些文件,并根据已指定的值来执行安装。响应文件安装也称为静默安装。响应文件的另一个优点是:它们提供了对那些不能使用“DB2安装”向导设置的参数的访问。在Linux和UNIX操作系统上,如果将DB2安装映像嵌入你自己的应用程序中,那么你的应用程序有可能从安装程序中以计算机可读的格式接收安装进度信息和提示。这种安装方式一般比较适合大批量的客户端安装。
db2_install命令(仅适用于Linux和UNIX平台)
db2_install命令将安装指定的具有“字符”界面支持的DB2产品的所有组件。通过使用-L参数就可以选择要支持的其他语言。尽管db2_install命令会安装指定的DB2产品的所有组件,但却不会执行用户和组创建、实例创建或配置。在安装之后执行配置时,此安装方法可能是首选。如果希望在安装DB2产品时就加以配置,那么请考虑使用“DB2安装”向导。
1.2.1 DB2在Windows上的安装
在Windows上安装DB2非常简单,安装步骤如下:
首先检查系统的硬件资源是否满足安装的最小需求,然后启动DB2安装向导(Windows)。
(1) 用管理员账号登录Windows系统。
(2) 关闭所有应用程序,以便DB2安装过程可以快速完成并且在安装过程出现问题时易于定位。
(3) 把DB2的安装光盘插入光驱,启动自动安装向导,如图1-5所示。
图1-5 启动“DB2安装启动板”
在DB2安装向导的启动界面中,可以看到左边菜单有“发行版信息”、“安装需求”、“升级信息”、“安装产品”和“退出”这几个选项。可以预先浏览“安装需求”,以了解安装DB2有哪些具体要求和注意事项。这里需要强调的是,如果安装选择的组件所需的空间超出为安装这些组件而指定的路径所在磁盘的空间,安装程序就会发出关于空间不足的警告。可以继续安装。但是,如果实际上没有足够的空间用于正要安装的文件,当没有更多的空间时,安装将停止。此时,如果不能释放空间,就必须人工停止安装程序。
浏览“发行版信息”,就可以了解到与DB2有关的信息指南。
(4) 单击“安装产品”。
(5) 选择需要安装的版本(本例中我们安装ESE版本),如图1-6所示。单击“下一步”按钮继续安装。
770)this.width=770;' />
相关品牌分类
购物网址大全
循序渐进DB2(第2版)――DBA系统管理、运维与应用案例(china-pub首发)报价为60.00,以上所显示的循序渐进DB2(第2版)――DBA系统管理、运维与应用案例(china-pub首发)价格等详情是从互动出版网网站同步过来的或智购网购物搜索引擎自动搜索形成的索引快照信息(商品信息未经审核,快照亦可能未经更新),如欲购买请以互动出版网网站上的循序渐进DB2(第2版)――DBA系统管理、运维与应用案例(china-pub首发)报价为准。

我要回帖

更多关于 数据库运维 的文章

 

随机推荐