PLSQL程序优化和性能分析方法.pdf

1. 前言 3 1.1 目的 3 1.2 文档说明 3 1.3 词汇表 3 1.4 参考资料 3 2. PLSQL 程序优化原则 4 2.1 导致性能问题的内在原因 4 2.2 PLSQL 优化的核心思想 4 2.3 ORACLE 优化器 4 2.4 PLSQL 优化 5 2.4.1 选择最有效率的表名顺序 5 2.4.2 WHERE 子句中的连接顺序 6 2.4.3 SELECT 子句中避免使用 ‘ * ‘ 6 2.4.4 用 EXISTS 替代 IN 6 2.4.5 用 NOT EXISTS 替代 NOT IN 7 2.4.6 用表连接替换 EXISTS 7 2.4.7 用 EXISTS 替换 DISTINCT 8 2.4.8 减少对表的查询 8 2.4.9 避免循环(游标)里面嵌查询 9 2.4.10 尽量用 union all 替换 union11 2.4.11 使用 DECODE 函数来减少处理时间 11 2.4.12 group by 优化 11 2.4.13 尽量避免用 order by 12 2.4.14 用 Where 子句替换 HAVING 子句 12 2.4.15 使用表的别名(Alias) 12 2.4.16 删除重复记录 12 2.4.17 COMMIT 使用 13 2.4.18 减少多表关联 13 2.4.19 批量数据插入 13 2.5 索引使用优化 14 2.5.1 避免在索引列上使用函数或运算 14 2.5.2 避免改变索引列的类型 15 2.5.3 避免在索引列上使用 NOT 15 2.5.4 用=替代 16 2.5.5 避免在索引列上使用 IS NULL 和 IS NOT NULL 16 2.5.6 带通配符(%)的 like 语句 16 2.5.7 总是使用索引的第一个列 17 2.5.8 多个平等的索引 17 2.5.9 不明确的索引等级 17 2.5.10 自动选择索引 17 2.5.11 使用提示(Hints) 17 2.5.12 表上存在过旧的分析 18 2.5.13 表上存在并行 19 PLSQL 程序优化和性能测试方法 2.5.14 关于索引建立 19 3. PLSQL 程序性能问题测试方法 19 3.1 性能问题分析 19 3.2 EXPAIN PLAN 分析索引使用 20 3.3 TOPSQL 分析 22 3.4 针对性语句搜索 26 3.5 后台存储过程跟踪 27 3.6 性能监控 28 4. 性能测试工具设计思想 29 第 2 页 / 共 29 页 PLSQL 程序优化和性能测试方法 1. 前言 1.1 目的 性能测试是测试中比较重要的工作,性能测试应分为压力的测试和性能的测试,其中性 能问题中绝大部分都是由于程序编写的不合理、不规范造成的。本文档说明了程序中常见的 不优化的脚本编写,导致的性能问题,并且在也描述了怎样去跟踪和解决程序上的性能问题 的方法。 在最后一章里面描述了做一个白盒测试工具测试性能问题的设计思想。 1.2 文档说明 本文档只说明 PLSQL 编写的优化问题,不包括 ORACLE 本身的性能优化(内存 SGA、 系统参数、表空间等)、操作系统的性能问题和硬件的性

文档评论(0)

1亿VIP精品文档

相关文档