失效链接处理 |
高级进阶DB2:内部结构、高级管理与问题诊断 第2版 PDF 下载
下载地址:
版权归出版社和原作者所有,链接已删除,请购买正版
用户下载说明:
电子版仅供预览,下载后24小时内务必删除,支持正版,喜欢的请购买正版书籍:
https://product.dangdang.com/11608971704.html
相关截图: 资料简介: 数据库内核是数据库系统稳定运行的心脏,DB2数据库内核庞大而复杂。本书从DB2内核组件手,同时介绍了其与操作系统在程、共享内存、信号量之间的关系。作者在本书中重介绍了各个内部组件的层次与功能、内存体系结构、存储内部结构、高级锁等。优化器是任何数据库执行SQL的关键部分,本书对优化器产生的各种执行计划行了详细解释,这对于理解DB2内部工作原理大有裨益。同时,本书还介绍了DB2各种诊断工具的使用,各种数据库配置参数的含义及调整、数据库系统视图等。 本书特色 ◆ 本书揭示了DB2数据库的内部结构和机理,展示了DB2数据库技术的精髓,并结合多年的实践经验,贯穿了大量的实战技巧 ◆ 新增了HADR和DPF的全名介绍和技巧 资料目录: 第1章 DB2进程和内存结构 1.1 DB2进程体系结构 1.1.1 DB2进程技术模型 1.1.2 与操作系统相关的进程 1.1.3 与实例相关的进程和线程 1.1.4 与数据库相关的进程和线程 1.1.5 与应用程序相关的进程 1.1.6 监控EDU运行的SQL语句 1.1.7 收集进程/线程堆栈信息 1.2 代理程序通信 1.2.1 代理程序概述 1.2.2 代理程序相关配置参数 1.2.3 应用程序、代理程序和事务 1.2.4 代理和连接的常见问题与优化 1.3 实用程序相关进程 1.3.1 LOAD相关进程 1.3.2 备份/恢复相关进程 1.4 DB2内存体系结构 1.4.1 实例共享内存 1.4.2 数据库共享内存 1.4.3 应用程序共享内存 1.4.4 代理私有内存 1.4.5 代理程序与应用程序之间通信时的内存 1.4.6 共享内存与私有内存 1.5 内存集、内存池和内存块 1.5.1 实例级内存集 1.5.2 跟踪内存使用 1.5.3 定位内存泄漏 1.5.4 数据库级内存集 1.6 内存案例分析 1.7 内存自动调优 1.8 本章小结 第2章 DB2数据库设计 2.1 DB2存储内部结构 2.1.1 DB2存储层次结构 2.1.2 表空间存储结构 2.1.3 SMS表空间的存储结构 2.1.4 DMS表空间头部信息 2.1.5 DMS表空间映射 2.1.6 表空间的高水位标记 2.1.7 RID格式 2.1.8 索引叶的内部结构 2.2 数据库物理设计 2.2.1 表空间容器的放置原则 2.2.2 数据库物理设计原则 2.3 数据库逻辑设计 2.3.1 缓冲池设计原则 2.3.2 表空间设计原则 2.3.3 索引设计原则 2.4 其他高级设计技术 2.4.1 表分区及应用案例 2.4.2 索引分区及应用案例 2.4.3 数据库分区及应用案例 2.4.4 多维群集(MDC)及应用案例 2.4.5 表分区和多维集群表的使用 2.4.6 物化查询表及应用案例 2.4.7 MDC、数据库分区、MQT和表分区配合使用 2.4.8 表压缩和索引压缩 2.5 总结 第3章 表的高级特性 3.1 表分区的概念 3.1.1 定义 3.1.2 优点 3.2 分区表的基本用法 3.2.1 创建基本表分区 3.2.2 定义分区表空间和分区键 3.2.3 执行计划 3.2.4 将现有表和视图迁移到分区表 3.3 分区表的管理 3.3.1 分区转出 3.3.2 分区转入 3.3.3 分区索引 3.3.4 分区重组 3.4 分区表detach 的常见问题 3.4.1 分区主表关联有强制外键约束 3.4.2 分区主表含有非自动刷新的MQT 3.4.3 分区主表含有自动刷新的MQT 3.4.4 主表或主表的分区正在被其他事务以非UR的隔离级别读取 3.5 行压缩 3.5.1 概念 3.5.2 启用或禁用行压缩 3.5.3 创建数据字典 3.5.4 评估压缩空间 3.5.5 检查压缩状态 3.6 表压缩应用案例 3.7 索引压缩及应用案例 3.8 本章小结 第4章 分区数据库 4.1 DB2 DPF多分区基本架构和相关概念 4.1.1 DB2 DPF基本架构 4.1.2 DB2 DPF数据的分布键以及数据倾斜问题 4.1.3 DB2 DPF数据库并行I/O 4.1.4 DB2 DPF数据库的扩展性 4.2 DB2 DPF多分区应用 4.3 配置DB2 DPF多分区环境 4.3.1 DB2 DPF安装准备 4.3.2 DB2 DPF环境搭建 4.3.3 创建表空间和缓冲池 4.3.4 DB2 DPF最佳实践 4.4 本章小结 第5章 DB2 HADR 5.1 HADR的设计理念 5.1.1 什么是高可用性 5.1.2 HADR的原理 5.1.3 HADR的日志处理模式 5.1.4 HADR的限制 5.2 HADR典型场景的搭建 5.2.1 对基础环境的要求 5.2.2 HADR的配置参数 5.2.3 复制PRIMARY数据库 5.2.4 启动STANDBY 5.2.5 启动PRIMARY 5.3 HADR的维护 5.3.1 监控HADR 5.3.2 HADR的切换方式 5.3.3 切换后对应用产生的影响 5.3.4 HADR状态 5.3.5 HADR异常状态的处理 5.4 HADR性能调优 5.4.1 接收缓冲 5.4.2 网络相关 5.4.3 内部参数 5.4.4 表和表空间的调整 5.5 HADR高可用案例分享 5.5.1 HADR结合PowerHA 5.5.2 HADR结合TSA 第6章 锁和并发 6.1 锁的概念 6.1.1 数据一致性 6.1.2 事务和事务边界 6.1.3 锁的概念 6.2 锁的属性、策略及模式 6.2.1 锁的属性 6.2.2 加锁策略 6.2.3 锁的模式 6.2.4 如何获取锁 6.2.5 锁的兼容性 6.3 隔离级别(Isolation Levels) 6.3.1 可重复读(RR-Repeatable Read) 6.3.2 读稳定性(RS-Read Stability) 6.3.3 游标稳定性(CS-Cursor Stability) 6.3.4 当前提交(Currently Committed) 6.3.5 未提交读(UR-Uncommitted Read) 6.3.6 隔离级别的摘要 6.4 锁转换、锁等待、锁升级和死锁 6.4.1 锁转换及调整案例 6.4.2 锁升级及调整案例 6.4.3 锁等待及调整案例 6.4.4 死锁及调整案例 6.5 锁相关的性能问题总结 6.6 锁与应用程序设计 6.7 锁监控工具 6.8 最大化并发性 6.8.1 选择合适的隔离级别 6.8.2 尽量避免锁等待、锁升级和死锁 6.8.3 设置合理的注册表变量 6.9 锁和并发总结 第7章 DB2高级监控 7.1 从系统函数和视图获取监控信息 7.1.1 利用表函数监控 7.1.2 性能管理视图 7.2 监控指标和案例 7.2.1 一些常用的监控指标和语句 7.2.2 编写脚本以获取监控信息 7.3 db2pd及监控案例 7.3.1 db2pd概述 7.3.2 db2pd监控案例 7.4 事件监视器及监控案例 7.4.1 事件监视器的创建方法和步骤 7.4.2 事件监控器案例 7.4.3 编写脚本从事件监控器中获取监控信息 7.5 db2mtrk及监控案例 7.6 DB2高级监控总结 第8章 DB2故障诊断 8.1 DB2故障诊断机制 8.1.1 故障诊断相关文件 8.1.2 设置故障诊断级别 8.2 深入讲解故障诊断文件 8.2.1 解释管理通知日志文件条目 8.2.2 解释诊断日志文件条目 8.3 故障诊断工具 8.3.1 使用db2support收集环境信息 8.3.2 db2ls和db2level 8.3.3 使用db2diag分析db2diag.log文件 8.3.4 DB2内部返回码 8.4 故障诊断分析流程 8.4.1 故障诊断流程 8.4.2 结合系统事件判断 8.4.3 结合系统运行状况诊断 8.5 案例分析 8.6 本章小结 第9章 数据库安全 9.1 DB2安全机制概述 9.2 认证(authentication) 9.2.1 什么时候进行DB2身份认证 9.2.2 DB2身份认证类型 9.3 权限(authorization) 9.3.1 权限层次 9.3.2 实例级权限 9.3.3 数据库级权限 9.4 特权(privilege) 9.4.1 特权层次结构 9.4.2 授予特权 9.4.3 撤销特权 9.4.4 显式特权/隐式特权/间接特权 9.4.5 静态和动态SQL 特权考虑因素 9.4.6 维护特权/权限 9.5 某银行安全规划案例 9.6 执行安全审计(db2audit) 9.6.1 实例级审计 9.6.2 数据库级审计 9.7 基于标签的访问控制(LBAC)及案例 9.8 本章小结 第10章 DB2常见问题总结 10.1 实例常见问题和诊断案例 10.1.1 实例无法启动问题总结 10.1.2 实例无法正常终止 10.1.3 实例启动报SQL1042C错误 10.1.4 实例目录误删除 10.1.5 实例崩溃问题 10.2 数据库常见问题总结 10.2.1 数据库日志空间满SQL0964C 错误 10.2.2 数据库时区和时间 10.2.3 中文乱码和代码页转换 10.2.4 通讯错误SQL30081N 10.2.5 数据库备份、前滚暂挂 10.2.6 数据库活动日志删除 10.2.7 数据库损坏(数据页、索引页)SQL1043C 10.2.8 索引重新构建问题 10.2.9 DB2实用程序不可用 10.2.10 快速清空表数据 10.2.11 表和索引统计信息不一致 10.2.12 表空间高水位问题 10.3 表空间状态 10.3.1 backup pending 10.3.2 脱机(offline and not accessible) 10.3.3 quiesced exclusive|share|update 10.3.4 restore pending和storage must be defined 10.3.5 rollforward pending 10.3.6 表空间状态总结 10.4 LOAD期间表状态总结 10.4.1 check pending 10.4.2 load pending 10.4.3 load in progress 10.4.4 not load restartable 10.4.5 read access only 10.4.6 unavailable 10.5 锁相关问题 10.5.1 锁升级 10.5.2 锁等待问题解决流程 10.5.3 死锁 10.6 内存常见问题 10.6.1 bufferpool设置过大,导致数据库无法启动 10.6.2 排序溢出 10.6.3 锁内存不足 10.7 备份恢复常见问题 10.8 数据移动常见问题总结 10.8.1 标识列 10.8.2 生成列 10.8.3 大对象 10.8.4 空值处理 10.8.5 定界符注意问题 10.8.6 PC/IXF注意问题 10.8.7 代码页不同注意事项 10.8.8 日期格式 10.8.9 XML问题 10.9 安全常见问题总结 10.9.1 从PUBLIC撤销隐式的权限和特权 10.9.2 保护系统编目视图 10.9.3 创建实例用户并显式指定组 10.9.4 为SYSxxx_GROUP参数使用显式值 10.9.5 跟踪隐式特权 10.9.6 不授予不必要的特权 10.9.7 使用加密的AUTHENTICATION模式 10.9.8 使用独立ID创建和拥有对象 10.9.9 使用视图控制数据访问 10.9.10 使用存储过程控制数据访问 10.9.11 使用LBAC控制数据访问 10.9.12 对重要敏感数据进行加密 10.10 SQL0805和SQL0818错误 |