使用ORACLE SQL Tuning advisor快速优化低效的SQL语句
来源:互联网 发布:数据库原理及应用 pdf 编辑:程序博客网 时间:2024/05/09 04:45
ORACLE10G以后版本的SQL Tuning advisor可以从以下四个方面给出优化方案
(1)为统计信息丢失或失效的对象收集统计信息
(2)考虑优化器的任何数据偏差、复杂谓词或失效的统计信息
(3)重新构建 SQL 以优化性能
(4)提出新索引建议
下面来实际测试:
1、为SQL_id创建一个STA(SQL Tuning advisor)分析任务(使用SYS用户执行)
SQL> variable task_li_test varchar2(2000);
SQL>exec :task_li_test:=dbms_sqltune.create_tuning_task(sql_id=>'1z9atcd704psu',time_limit=>600,task_name=>'li_sql_1');
2、执行上面创建的STA(需要一定的时间)
SQL> exec dbms_sqltune.execute_tuning_task(task_name=>'li_sql_1');
3、查询优化任务创建与执行的情况
selecta.owner,b.task_id,b.task_name,a.createdfrom dba_advisor_tasks a,dba_advisor_log bwhere a.task_id=b.task_idand a.task_name='li_sql_1'
owner
task_id
task_name
created
SYS
106698
li_sql_1
2013-9-14 16:57
4、查看任务优化报告(优化的详细内容)
SQL>select dbms_sqltune.report_tuning_task('li_sql_1')from dual;
5、接受建议的 SQL 概要文件,即创建SQL_Profle
SQL> execute dbms_sqltune.accept_sql_profile(task_name => 'li_sql_1',task_owner =>'SYS', replace => TRUE);
6、查看第5步创建起来的SQL_Profile信息
SQL>select a.name,a.task_id,a.createdfrom dba_sql_profiles a,dba_advisor_log bwhere a.task_id=b.task_idand b.task_name='li_sql_1'
NAME
TASK_ID
CREATED
SYS_SQLPROF_01411bdf99410002
106699
14-9月 -13 05.49.00.000000 下午
7、再次执行SQLID为‘1z9atcd704psu’的语句
7.1、执行时间由原来的6分钟降为3秒
7.2、查看执行计划,执行计划中包含下面信息,说明是使用了创建的SQL_Profile所起到的效果
- SQL profile SYS_SQLPROF_01411bdf99410002used for this statement
8、删除SQL_Profile
SQL>exec dbms_sqltune.drop_sql_profile(name =>'SYS_SQLPROF_01411bdf99410002');
9、删除优化任务
SQL> exec dbms_sqltune.drop_tuning_task(task_name => 'li_sql_1');
本文为“踩点”原创,转发请说明出处。谢谢!
- 使用ORACLE SQL Tuning advisor快速优化低效的SQL语句
- 使用SQL Tuning Advisor (STA) 优化SQL语句
- Oracle 11g 使用SQL Tuning Advisor调优SQL语句
- 使用DBMS_SQLTUNE的Sql Tuning Advisor优化SQL
- Oracle SQL Tuning Advisor
- 如何用 SQL Tuning Advisor (STA) 优化SQL语句
- 如何用 SQL Tuning Advisor (STA) 优化SQL语句
- 如何用 SQL Tuning Advisor (STA) 优化SQL语句
- 用 SQL Tuning Advisor (STA) 优化SQL语句
- 如何用 SQL Tuning Advisor (STA) 优化SQL语句
- 如何用 SQL Tuning Advisor (STA) 优化SQL语句
- 如何用 SQL Tuning Advisor (STA) 优化SQL语句
- 如何用 SQL Tuning Advisor (DBMS_SQLTUNE) 优化SQL语句
- 如何用 SQL Tuning Advisor (STA) 优化SQL语句
- 如何用 SQL Tuning Advisor (STA) 优化SQL语句
- 如何用 SQL Tuning Advisor (STA) 优化SQL语句
- 如何用 SQL Tuning Advisor (STA) 优化SQL语句
- 如何用 SQL Tuning Advisor (STA) 优化SQL语句
- makefile.build(ZT)
- 求n^n和n!的最左边的数字
- iOS开发中@property的属性介绍
- cocods2d实现图层的简单拖拽
- rails 迁移migrate model对应的数据库字段类型
- 使用ORACLE SQL Tuning advisor快速优化低效的SQL语句
- 【庞果网】建立信号基站题解
- 华为9月14日上机考试题(第一题)
- Hbase优化之一
- android颜色渐变
- linux里的驱动接口
- 130914
- mysql查询一天,查询一周,查询一个月的数据
- HDU 4737