您好,欢迎访问三七文档
第1章性能调整概述.....11.1性能概述......21.2性能评估......41.3建立性能目标......71.4什么时候需要做性能调整......81.5性能调整准则......91.6性能调整的方法和过程......101.6.1性能调整的步骤.....101.6.2性能调整的限制.....111.6.3向客户了解情况.....111.6.4性能调整流程图.....121.7性能调整总结......15第2章存储I/O设计....192.1存储基本概念......202.1.1硬盘.....202.1.2磁盘阵列技术.....212.1.3存储的Cache..222.1.4IOPS..222.1.5网络存储技术.....232.2存储架构......242.2.1存储I/O处理过程.....242.2.2应用系统I/O流动图.....242.2.3RAIDIOPS..262.2.4RAID10和RAID5的比较.....282.3存储相关性能调整案例......312.4存储I/O设计总结......32第3章操作系统相关性能问题....353.1HP-UX系统性能监控综述......353.1.1监控资源对象和标准.....353.1.2监控工具.....363.1.3监控系统总体运行状态.....363.1.4性能状态的判定流程和监控命令.....383.2AIX性能监控综述......473.2.1监控工具.....473.2.2监控系统总体运行状态.....483.2.3监控CPU性能.....513.2.4监控内存使用.....553.2.5监控存储系统状态.....573.2.6监控网络状态.....583.3操作系统性能优化......603.3.1直接I/O和并发I/O....613.3.2异步I/O和同步I/O....623.3.3minpout和maxpout.653.3.4文件系统和裸设备.....653.3.5负载均衡及条带化(Striping).663.4逻辑卷和lvmo优化......723.4.1使用lvmo进行优化.....733.4.2卷组pbuf池.....733.4.3pbuf设置不合理导致性能问题调整案例.....743.4.4使用ioo进行优化.....783.5总结......83第4章数据库物理设计和逻辑设计....854.1数据库物理设计......854.1.1表空间容器放置原则.....854.1.2数据库物理设计原则.....864.2数据库逻辑设计......864.2.1缓冲池设计原则.....864.2.2表空间设计原则.....914.3使用Autoconfig设计数据库......994.4其他高级设计技术......1024.4.1表分区及应用案例.....1024.4.2数据库分区及应用案例.....1044.4.3多维群集(MDC)及应用案例.....1064.4.4物化查询表及应用案例.....1104.4.5MDC、数据库分区、MQT和表分区配合使用.....1144.4.6表压缩及应用案例.....1254.4.7表压缩应用案例二.....1324.4.8XML及应用案例.....1404.5数据库设计总结......1424.5.1表空间与表设计方面的考虑.....1424.5.2索引设计方面的考虑.....1464.5.3缓冲池方面的考虑.....1474.5.4总结.....148第5章DB2性能监控....1495.1快照监视器案例......1495.1.1监控动态SQL语句.....1495.1.2监控临时表空间使用.....1525.2事件监视器及监控案例......1535.3利用表函数监控......1585.4性能管理视图及案例......1635.4.1监控缓冲池命中率.....1655.4.2监控PackageCache大小.....1655.4.3监控执行成本最高的SQL语句.....1665.4.4监控运行最长的SQL语句.....1665.4.5监控SQL准备和预编译时间最长的SQL语句.....1675.4.6监控执行次数最多的SQL语句.....1675.4.7监控排序次数最多的SQL语句.....1685.4.8监控LOCKWAIT等待时间.....1685.4.9监控LOCKCHAIN....1695.4.10监控锁内存使用.....1705.4.11监控锁升级、死锁和锁超时.....1705.4.12监控全表扫描的SQL...1715.4.13检查pagecleaners是否足够.....1715.4.14监控prefecher是否足够.....1725.4.15监控数据库内存使用.....1735.4.16监控日志使用情况.....1735.4.17监控占用日志空间最旧的交易.....1745.4.18用SQL监控健康指示器.....1745.4.19监控存储路径.....1755.4.20追踪监控历史.....1765.5db2pd...1765.5.1常用db2pd监控选项和示例.....1775.5.2使用db2pd监控死锁案例.....1915.5.3db2pd使用问题总结.....1965.6db2mtrk及监控案例......1975.7本章小结......200第6章数据库配置参数调整....2016.1数据库配置参数......2016.2监控和调优实例(DBM)配置参数......2036.2.1代理程序相关配置参数.....2036.2.2SHEAPTHRES..2066.2.3FCM_NUM_BUFFERS..2066.2.4SHEAPTHRES_SHR...2076.2.5INTRA_PARALLEL...2086.2.6MON_HEAP_SZ...2086.2.7QUERY_HEAP_SZ...2086.3监控和调优DB配置参数......2086.3.1缓冲池大小.....2096.3.2日志缓冲区大小(LOGBUFSZ).2156.3.3应用程序堆大小(APPHEAPSZ).2166.3.4SORTHEAP和SHEAPTHRES..2176.3.5锁相关配置参数.....2196.3.6活动应用程序的最大数目(MAXAPPLS).2236.3.7PKGCACHESZ...2246.3.8CATALOGCACHE_SZ...2246.3.9异步页清除程序的数目(NUM_IOCLEANERS).2246.3.10异步I/O服务器的数目(NUM_IOSERVERS).2266.3.11组提交数目(MINCOMMIT).2266.3.12AVG_APPLS..2286.3.13CHNGPGS_THRESH(DB).2286.3.14MAXFILOP...2296.3.15LOGPRIMARY、LOGSECOND和LOGFILSZ...2296.3.16STMTHEAP...2296.3.17DFT_QUERYOPT...2296.3.18UTIL_HEAP_SZ(DB).2306.4调整DB2概要注册变量......2306.4.1DB2_PARALLEL_IO....2306.4.2DB2_EVALUNCOMMITTED....2326.4.3DB2_SKIPDELETED....2326.4.4DB2_SKIPINSERTED....2326.4.5DB2_USE_PAGE_CONTAINER_TAG....2336.4.6DB2_SELECTIVITY...2336.5内存自动调优......2336.5.1内存自动调优示例.....2346.5.2启用内存自动调优及相关参数.....2356.6总结......237第7章锁和并发....2397.1锁等待及调整案例......2397.1.1锁等待问题解决流程和步骤.....2407.1.2捕获引起锁等待的SQL...2427.1.3利用db2pd捕获锁超时.....2447.2锁升级及调整案例......2487.2.1监控锁升级.....2497.2.2锁升级调整.....2507.3死锁及调整案例......2527.3.1利用事件监视器监控死锁.....2537.3.2死锁案例.....2557.3.3最小化死锁建议.....2577.4隔离级别与锁......2577.4.1可重复读(RR—RepeatableRead).2587.4.2读稳定性(RS—ReadStability).2597.4.3游标稳定性(CS—CursorStability).2617.4.4未提交读(UR—UncommittedRead).2637.4.5隔离级别加锁总结.....2657.4.6隔离级别总结.....2697.5最大化并发性......2717.5.1选择合适的隔离级别.....2717.5.2尽量避免锁等待、锁升级和死锁.....2717.5.3设置合理的注册变量.....2717.6锁相关的性能问题总结......2807.7锁与应用程序开发......2827.8本章小结......285第8章索引设计与优化....2878.1索引概念......2878.1.1索引优点.....2878.1.2索引类型.....2898.2索引结构......2908.3理解索引访问机制......2938.4索引设计......2968.4.1创建索引.....2968.4.2创建集群索引.....2978.4.3创建双向索引.....2978.4.4完全索引访问(indexaccessonly).2998.4.5与创建索引相关的问题.....2998.4.6创建索引示例.....3008.5索引创建原则与示例......3018.5.1索引与谓词.....3018.5.2根据查询所使用的列建立索引.....3038.5.3根据条件语句中谓词的选择度创建索引.....3048.5.4避免在建有索引的列上使用函数.....3058.5.5在那些需要被排序的列上创建索引.....3068.5.6合理使用INCLUDE关键词创建索引.....3078.5.7指定索引的排序属性.....3088.6影响索引性能的相关配置......3098.6.1设置影响索引性能的配置参数.....3098.6.2为索引指定不同的表空间.....3098.6.3确保索引的集群度.....3108.6.4使表和索引统计信息保持最新.....3108.6.5重组索引.....3118.7索引维护......3118.7.1异步索引清除(AIC).3128.7.2联机索引整理碎片.....3148.8DB2DesignAdvisor(db2advis)..3158.9索引调整总结......3198.9.1索引设计总结.....3198.9.2索引性能总结.....321第9章DB2优化器....3259.1DB2优化器介绍......3269.2SQL语句执行过程......3289.3优化器组件和工作原理......3319.3.1查询重写方法和示例:谓词移动、合并和转换.....3319.3.2查询重写示例:视图合并.....3329.3.3查询器重写示例:消除DISTINCT...3359.3.4查询器重写示例:隐含谓词.....3369.4扫描方式......3379.4.1全表扫描.....3379.4.2索引扫描.....3389.5连接方法......3419.5.1嵌套循环连接.....3439.5.2合并连接.....3449.5.3哈希(hash)连接.....3459.5.4选择最佳连接的策略.....3469.6优化级别......3479.7如何影响优化器来提高性能......3489.7.1使DB2统计信息保持最新.....3489.7.2构建适当的索引.....3499.7.3配置合理的数据库配置参数
本文标题:db2优化调整资料
链接地址:https://www.777doc.com/doc-4474727 .html