微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Oracle SQL 自动调优

Oracle sql 自动调优

Oracle 11版本之后,Oracle支持自动调优,认开启自动调优任务,每天执行一次,可以查看生成的调优建议。

本文的sql语句基于 11.2.0.1.0版本,不保证在其他版本上的可用性。

查询是否启用自动sql调优作业

select client_name,status,consumer_group,window_group from dba_autotask_client order by client_name;

其中一个sql tuning advisor sql调优顾问。

查看sql调优顾问最近几次的运行情况

select task_name,to_char(execution_end,'DD-MON-YY HH24:MI') from 
dba_advisor_executions where task_name='SYS_AUTO_sql_TUNING_TASK' order by 
execution_end;

查看sql自动调优建议

set  linesize 3000 PAGESIZE 0 LONG 100000
select DBMS_sqlTUNE.REPORT_AUTO_TUNING_TASK FROM DUAL;

一般会有大量输出,在sqlplus上不方便查看,最好能导出到文本中。

创建两个sql文件,auto_tuning_report_init.sql 是环境初始化设置和执行语句,
auto_tuning_report.sql查询sql自动调优建议的sql语句,会被前一个调用
最终会在当前目录下生成 auto_tuning_report.txt

里面包含详细信息和建议。

生成sql调优脚本

根据sql建议,可以生成相应的调优的sql语句脚本。

select DBMS_sqlTUNE.SCRIPT_TUNING_TASK('SYS_AUTO_sql_TUNING_TASK') from dual;

创建两个sql文件,generate_tuning_sql_init.sql 是环境初始化设置和执行语句,
generate_tuning_sql.sql生成调优sqlsql语句,会被前一个调用
最终会在当前目录下生成 auto_tuning_report_sql.txt

脚本文件包

原文地址:https://www.jb51.cc/oracle/209660.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐