《高级进阶DB2(第2版)》
基本信息
作者: 牛新庄
出版社:清华大学出版社
ISBN:9787302323839
上架时间:2013-7-3
出版日期:2013 年7月
开本:16开
页码:484
版次:2-1
所属分类:计算机 > 数据库 > DB2
更多关于 》》》《高级进阶DB2(第2版) 》
内容简介
计算机书籍
数据库内核是数据库系统稳定运行的心脏,DB2数据库内核庞大而复杂。《高级进阶DB2(第2版)——内部结构、高级管理与问题诊断》从DB2内核组件入手,同时介绍了其与操作系统在进程、共享内存、信号量之间的关系。作者在本书中重点介绍了各个内部组件的层次与功能、内存体系结构、存储内部结构、高级锁等。优化器是任何数据库执行SQL的关键部分,本书对优化器产生的各种执行计划进行了详细解释,这对于理解DB2内部工作原理大有裨益。同时,本书还介绍了DB2各种诊断工具的使用,各种数据库配置参数的含义及调整、数据库系统视图等。
目录
《高级进阶db2(第2版)——内部结构、高级管理与问题诊断》
第1章 db2进程和内存结构1
1.1 db2 进程体系结构1
1.1.1 db2进程技术模型1
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.1 load相关进程21
1.3.2 备份/恢复相关进程26
1.4 db2内存体系结构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.8 本章小结55
第2章 db2数据库设计57
2.1 db2存储内部结构57
2.1.1 db2存储层次结构57
2.1.2 表空间存储结构59
2.1.3 sms表空间的存储结构59
2.1.4 dms表空间头部信息59
2.1.5 dms表空间映射60
2.1.6 表空间的高水位标记61
2.1.7 rid格式61
2.1.8 索引叶的内部结构62
2.2 数据库物理设计63
2.2.1 表空间容器的放置原则63
2.2.2 数据库物理设计原则63
2.3 数据库逻辑设计64
2.3.1 缓冲池设计原则64
2.3.2 表空间设计原则69
2.3.3 索引设计原则79
2.4 其他高级设计技术81
2.4.1 表分区及应用案例81
2.4.2 索引分区及应用案例83
2.4.3 数据库分区及应用案例86
2.4.4 多维群集(mdc)及应用案例88
2.4.5 表分区和多维集群表的使用92
2.4.6 物化查询表及应用案例96
2.4.7 mdc、数据库分区、mqt和表分区配合使用100
2.4.8 表压缩和索引压缩111
2.5 总结111
第3章 表的高级特性113
3.1 表分区的概念113
3.1.1 定义113
3.1.2 优点114
3.2 分区表的基本用法115
3.2.1 创建基本表分区115
3.2.2 定义分区表空间和分区键118
3.2.3 执行计划123
3.2.4 将现有表和视图迁移到分区表126
3.3 分区表的管理128
3.3.1 分区转出128
3.3.2 分区转入130
3.3.3 分区索引132
3.3.4 分区重组135
3.4 分区表detach的常见问题140
3.4.1 分区主表关联有强制外键约束140
3.4.2 分区主表含有非自动刷新的mqt141
3.4.3 分区主表含有自动刷新的mqt141
3.4.4 主表或主表的分区正在被其他事务以非ur的隔离级别读取142
3.5 行压缩142
3.5.1 概念143
3.5.2 启用或禁用行压缩144
3.5.3 创建数据字典146
3.5.4 评估压缩空间148
3.5.5 检查压缩状态150
3.6 表压缩应用案例151
3.7 索引压缩及应用案例160
3.8 本章小结163
第4章 分区数据库165
4.1 db2 dpf多分区基本架构和相关概念165
4.1.1 db2 dpf基本架构165
4.1.2 db2 dpf数据的分布键以及数据倾斜问题166
4.1.3 db2 dpf数据库并行i/o168
4.1.4 db2 dpf数据库的扩展性169
4.2 db2 dpf多分区应用170
4.3 配置db2 dpf多分区环境172
4.3.1 db2 dpf安装准备172
4.3.2 db2 dpf环境搭建174
4.3.3 创建表空间和缓冲池177
4.3.4 db2 dpf最佳实践178
4.4 本章小结193
第5章 db2 hadr195
5.1 hadr的设计理念195
5.1.1 什么是高可用性195
5.1.2 hadr的原理197
5.1.3 hadr的日志处理模式198
5.1.4 hadr的限制200
5.2 hadr典型场景的搭建200
5.2.1 对基础环境的要求201
5.2.2 hadr的配置参数201
5.2.3 复制primary数据库202
5.2.4 启动standby203
5.2.5 启动primary204
5.3 hadr的维护204
5.3.1 监控hadr204
5.3.2 hadr的切换方式209
5.3.3 切换后对应用产生的影响210
5.3.4 hadr状态211
5.3.5 hadr异常状态的处理211
5.4 hadr性能调优212
5.4.1 接收缓冲212
5.4.2 网络相关212
5.4.3 内部参数212
5.4.4 表和表空间的调整213
5.5 hadr高可用案例分享213
5.5.1 hadr结合powerha214
5.5.2 hadr结合tsa218
第6章 锁和并发223
6.1 锁的概念223
6.1.1 数据一致性223
6.1.2 事务和事务边界224
6.1.3 锁的概念226
6.2 锁的属性、策略及模式231
6.2.1 锁的属性231
6.2.2 加锁策略231
6.2.3 锁的模式231
6.2.4 如何获取锁234
6.2.5 锁的兼容性236
6.3 隔离级别(isolation levels)237
6.3.1 可重复读(rr—repeatable read)237
6.3.2 读稳定性(rs—read stability)238
6.3.3 游标稳定性(cs—cursor stability)240
6.3.4 当前提交(currently committed)241
6.3.5 未提交读(ur—uncommitted read)242
6.3.6 隔离级别的摘要244
6.4 锁转换、锁等待、锁升级和死锁246
6.4.1 锁转换及调整案例246
6.4.2 锁升级及调整案例248
6.4.3 锁等待及调整案例251
6.4.4 死锁及调整案例253
6.5 锁相关的性能问题总结257
6.6 锁与应用程序设计259
6.7 锁监控工具262
6.8 最大化并发性266
6.8.1 选择合适的隔离级别266
6.8.2 尽量避免锁等待、锁升级和死锁266
6.8.3 设置合理的注册表变量267
6.9 锁和并发总结275
第7章 db2高级监控277
7.1 从系统函数和视图获取监控信息277
7.1.1 利用表函数监控277
7.1.2 性能管理视图280
7.2 监控指标和案例281
7.2.1 一些常用的监控指标和语句281
7.2.2 编写脚本以获取监控信息287
7.3 db2pd及监控案例289
7.3.1 db2pd概述289
7.3.2 db2pd监控案例290
7.4 事件监视器及监控案例301
7.4.1 事件监视器的创建方法和步骤302
7.4.2 事件监控器案例303
7.4.3 编写脚本从事件监控器中获取监控信息306
7.5 db2mtrk及监控案例308
7.6 db2高级监控总结310
第8章 db2故障诊断311
8.1 db2故障诊断机制311
8.1.1 故障诊断相关文件311
8.1.2 设置故障诊断级别320
8.2 深入讲解故障诊断文件325
8.2.1 解释管理通知日志文件条目325
8.2.2 解释诊断日志文件条目326
8.3 故障诊断工具329
8.3.1 使用db2support收集环境信息329
8.3.2 db2ls和db2level330
8.3.3 使用db2diag分析db2diag.log文件331
8.3.4 db2内部返回码337
8.4 故障诊断分析流程339
8.4.1 故障诊断流程339
8.4.2 结合系统事件判断342
8.4.3 结合系统运行状况诊断342
8.5 案例分析343
8.6 本章小结347
第9章 数据库安全349
9.1 db2安全机制概述350
9.2 认证(authentication)352
9.2.1 什么时候进行db2 身份认证352
9.2.2 db2身份认证类型353
9.3 权限(authorization)358
9.3.1 权限层次358
9.3.2 实例级权限359
9.3.3 数据库级权限365
9.4 特权(privilege)368
9.4.1 特权层次结构368
9.4.2 授予特权370
9.4.3 撤销特权374
9.4.4 显式特权/隐式特权/ 间接特权376
9.4.5 静态和动态sql特权考虑因素379
9.4.6 维护特权/权限381
9.5 某银行安全规划案例385
9.6 执行安全审计(db2audit)387
9.6.1 实例级审计387
9.6.2 数据库级审计392
9.7 基于标签的访问控制(lbac)及案例395
9.8 本章小结401
第10章 db2常见问题总结403
10.1 实例常见问题和诊断案例403
10.1.1 实例无法启动问题总结403
10.1.2 实例无法正常终止404
10.1.3 实例启动报sql1042c错误404
10.1.4 实例目录误删除405
10.1.5 实例崩溃问题405
10.2 数据库常见问题总结406
10.2.1 数据库日志空间满sql0964c错误406
10.2.2 数据库时区和时间407
10.2.3 中文乱码和代码页转换408
10.2.4 通讯错误sql30081n411
10.2.5 数据库备份、前滚暂挂412
10.2.6 数据库活动日志删除412
10.2.7 数据库损坏(数据页、索引页)sql1043c412
10.2.8 索引重新构建问题414
10.2.9 db2实用程序不可用415
10.2.10 快速清空表数据415
10.2.11 表和索引统计信息不一致416
10.2.12 表空间高水位问题417
10.3 表空间状态421
10.3.1 backup pending422
10.3.2 脱机(offline and not accessible)422
10.3.3 quiesced exclusive / share /update423
10.3.4 restore pending和storagemust be defined423
10.3.5 rollforward pending424
10.3.6 表空间状态总结424
10.4 load期间表状态总结424
10.4.1 check pending425
10.4.2 load pending425
10.4.3 load in progress426
10.4.4 not load restartable426
10.4.5 read access only427
10.4.6 unavailable428
10.5 锁相关问题428
10.5.1 锁升级428
10.5.2 锁等待问题解决流程428
10.5.3 死锁429
10.6 内存常见问题429
10.6.1 bufferpool设置过大,导致数据库无法启动429
10.6.2 排序溢出429
10.6.3 锁内存不足430
10.7 备份恢复常见问题430
10.8 数据移动常见问题总结431
10.8.1 标识列431
10.8.2 生成列435
10.8.3 大对象438
10.8.4 空值处理440
10.8.5 定界符注意问题443
10.8.6 pc/ixf注意问题446
10.8.7 代码页不同注意事项448
10.8.8 日期格式449
10.8.9 xml问题451
10.9 安全常见问题总结453
10.9.1 从public撤销隐式的权限和特权454
10.9.2 保护系统编目视图456
10.9.3 创建实例用户并显式指定组457
10.9.4 为sysxxx_group参数使用显式值457
10.9.5 跟踪隐式特权458
10.9.6 不授予不必要的特权459
10.9.7 使用加密的authentication模式460
10.9.8 使用独立id创建和拥有对象461
10.9.9 使用视图控制数据访问462
10.9.10 使用存储过程控制数据访问463
10.9.11 使用lbac控制数据访问464
10.9.12 对重要敏感数据进行加密465
10.10 sql0805和sql0818错误467
相关推荐
根据提供的信息,我们可以推断出该文档主要涉及的是关于IBM DB2数据库开发的高级课程内容。下面将基于这些有限的信息,尽可能地展开相关的知识点。 ### IBM DB2简介 IBM DB2是国际商业机器公司(IBM)开发的一款...
这个教程涵盖了从入门到进阶的全部知识,旨在帮助学习者逐步建立对DB2的深入理解。 首先,我们从基础开始。DB2的基础部分包括数据库基本概念、安装与配置、SQL语言的使用等。了解数据库的基本原理,如ACID属性...
本资料集提供了全面的DB2 V9相关知识,涵盖了从基础安装到高级特性的各个方面,对于DBA(数据库管理员)和IT专业人员来说是宝贵的参考资料。 首先,"DB2 9白皮书"是理解DB2 V9整体架构和设计理念的关键文档。白皮书...
本书籍《Getting Started with DB2 Express-C_V95-en》为 IBM DB2 Express-C 第九版(V9.5)的教程,适用于 Linux、UNIX 和 Windows 平台。本书由 IBM Corporation 出版于 2008 年 4 月,并受版权保护。作为一本面向...
本书的第六版出版于2008年,基于DB2 for Z/OS的版本8,并随产品的发展而持续更新。为了确保获得最新的技术信息和修正,读者应定期访问IBM官方网站或查阅CD-ROM资源,这些资源通常包含对书中内容的补充和修订,以及新...
第2部分为进阶篇,讲解了函数、子查询、表连接、不同DBMS中的SQL语法差异、SQL调优、NULL值处理、事务、开窗函数等高级技术;第3部分为案例篇,对前两部分的知识进行了综合运用。 本书适合程序开发人员及数据库...
第二部分为进阶篇,讲解了函数、 子查询、表联接、不同 DBMS 中 SQL 语法差异、SQL 调优、NULL 值处理、事务、开窗函数 等高级技术;第三部分为案例篇,讲解了前两部分的知识的综合运用。此书适用于学习数据 库编程...
第2章 检索数据...... 8 2.1 SELECT语句..... 8 2.2 检索单个列..... 9 2.3 检索多个列..... 10 2.4 检索所有列..... 11 2.5 小结..... 12 第3章 排序检索数据...... 13 3.1 排序数据..... 13 3.2 按多个列排序......
2. **《使用新DB2: IBM的对象关系型数据库系统》** (Don Chamberlin) - 深入讲解IBM DB2数据库系统的新特性及对象关系型数据库的概念。 - 分析了对象关系型数据库的优势及其在实际应用中的案例。 3. **《分布式...
【实战BIRT系列】由IBM的软件工程师Deng Peng Zhou为我们揭示了BIRT报表系统的基础与进阶应用。BIRT,即Business Intelligence and Reporting Tools,是一个基于Eclipse插件技术的开源报表工具,能与J2EE和J2SE应用...
- 第三代:高级语言(如C、C++、Java) - 第四代:数据库语言 - **处理复杂流程的语言**: - TL-SQL - PL/SQL - Java/C/C++/C# #### 二、为什么需要数据库? - **数据存储优势**: - 占用空间小。 - 易于...
2. **示例2:进阶SELECT语句** ```php $sql = "SELECT * FROM table WHERE id=?"; $rs = $db->Prepare($sql); $rs->Execute(array(1)); while (!$rs->EOF) { echo $rs->fields['name'] . "\n"; $rs->MoveNext...
《struts框架的验证例子》和《struts2中中文乱码处理》提供了如何使用Struts进行表单验证和解决中文乱码问题的具体实践。 - **Hibernate**:Hibernate是一个强大的对象关系映射(ORM)工具,简化了Java应用程序与...
1. **Java语法**:这是学习Java的第一步,包括但不限于变量、数据类型、运算符、控制流语句(如if/else、switch/case、for/while循环等)、数组等基本概念。 2. **面向对象编程(OOP)**:理解类与对象的概念,学会...