设为首页 加入收藏

TOP

关于Oracle开启自动收集统计信息的SPA测试
2018-01-17 13:05:26 】 浏览:198
Tags:关于 Oracle 开启 自动 收集 统计 信息 SPA 测试

检查自动统计信息的开启状态:
select client_name,status from dba_autotask_client;
确认自动统计信息的收集是关闭的,对于“auto optimizer stats collection”的状态应该是“DISABLED”。


附:关闭数据库的自动统计信息收集:


DG备库保持和主库同步,所以这些设置项也都是完全一样的。


主要就是在mount模式下切换数据到snapshot Standby模式再read write打开库,为之后测试做准备。下面是核心步骤:


关于其他细节可参考下面文章,主要是为“开启11gR2 DG的快照模式”,“后续还原成备库” 等操作提供参考:


进行SPA测试时,强烈建议在数据库中创建SPA测试专用用户,这样可以与其他用户区分开以及避免误操作。


备库从AWR中采集到SQL。
4.1 获取AWR快照的边界ID


我这里的结果是:


4.2 新建SQL Set
注意:以下的规范部分都是引用之前同事编写的SPA操作规范。


参考规范:


依据我的实验环境,真实的示例为:


4.3 转化AWR数据中的SQL,将其载入到SQL Set
从备库的AWR中提取SQL(这等同于主库历史的SQL)。
参考规范:


依据我的实验环境,真实的示例为:


4.4 打包SQL Set(可不做)
参考规范:


依据我的实验环境,真实的示例为:


说明:其实在我这里的测试场景下,这一步是不需要做的。因为备库的SQL Set可以直接在后面引用,不需要像SPA经典场景中,是从生产源环境打包导出来后,在测试环境再导入进去,再解包为SQL Set。


5.1 创建SPA分析任务
参考规范:


依据我的实验环境,真实的示例为:


5.2 获取变更前的SQL执行效率
参考规范:


依据我的实验环境,真实的示例为:


5.3 开启变更操作
变更内容:开启统计信息自动收集并确认已经成功收集了最新的统计信息。
这里首先需要开启统计信息自动收集,并可以把自动收集的窗口时间提前到现在,减少等待的时间。


查看窗口任务和有关统计信息自动收集的任务执行状态:


调整窗口任务的下一次执行时间:


更多有关调整窗口和自动任务的内容可参考文章:


5.4 变更后再次分析性能
测试运行SQL Tuning Set中的SQL语句,分析所有语句在收集统计信息之后的执行效率:
参考规范:


依据我的实验环境,真实的示例为:


5.5 变更前后性能对比
得到两次SQL Trail之后,可以对比两次Trial之间的SQL执行性能,可以从不同的维度对两次Trail中的所有SQL进行对比分析,主要关注的维度有:SQL执行时间,SQL执行的CPU时间,SQL执行的逻辑读。
参考规范:


依据我的实验环境,真实的示例为:


参考规范:


依据我的实验环境,真实的示例为:


这样就得到了各类的性能对比报告,以执行时间的全部报告为例,生成的报告概要头部类似这样:

当然,具体获取到的这些性能对比报告,针对那些有性能下降的SQL,还需要人工干预,评估如何优化处理那些性能下降的SQL。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇InfluxDB服务器启动流程 下一篇由于DG Broker的配置导致RAC某实..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目