使用dbms_sqltune获得SQL调整建议

 

原创转载请注明出处  

SQL TUNING ADVISOR是10G中顾问构架中的一个重要组建,除了使用EM来进行使用还可以使用语句来使用,主要目的在于看看ORACLE给出的SQL优化建议,但是好像不是每次都有效。如果能100%有用也不需要人为优化,不管如何我感觉可以一试。一下是完成这个任务的过程

1、创建调整任务

---define
DECLARE
my_task_name   VARCHAR2 (30);
my_sqltext     CLOB;
BEGIN
my_sqltext :=  'select * from pp,pp2 order by 1,2,3,4';
 my_task_name := dbms_sqltune.create_tuning_task (sql_text=> my_sqltext,
       bind_list     => null,
       user_name     => 'sys',
       scope         => 'COMPREHENSIVE',
       time_limit    => 60,
       task_name     => 'TEST_tuning_task',       
       description   => 'Tuning Task'
    );
END;

2、执行调整任务

---execute
exec dbms_sqltune.execute_tuning_task('TEST_tuning_task');

3、查看执行情况

---checek
SELECT status FROM USER_ADVISOR_TASKS WHERE lower(task_name) ='test_tuning_task';
select * from user_advisor_tasks;

---report
SET LONG 999999
set serveroutput on size 999999
SET LINESIZE 1000
SELECT DBMS_SQLTUNE.REPORT_TUNING_TASK('TEST_tuning_task') FROM DUAL;

4、删除调整任务

---drop
exec dbms_sqltune.drop_tuning_task('TEST_tuning_task');

时间: 2024-10-01 13:23:54

使用dbms_sqltune获得SQL调整建议的相关文章

MySQL · 性能优化· CloudDBA SQL优化建议之统计信息获取

阿里云CloudDBA具有SQL优化建议功能,包括SQL重写建议和索引建议.SQL索引建议是帮助数据库优化器创造最佳执行路径,需要遵循数据库优化器的一系列规则来实现.CloudDBA需要首先计算表统计信息,是因为: 数据库优化器通常是基于代价寻找执行路径: SQL优化建议所针对的数据库不限于MySQL数据库,也不局限于某一个特定版本: 1. 基本原则 数据库统计信息在SQL优化起到重要作用.用来估算查询条件选择度的常见统计信息包括表统计信息和字段统计信息.DBA计算查询条件选择度或代价时经常通过

CloudDBA初体验:SQL优化建议

数据库诊断和优化过程具有相当的复杂性,通常需要专业的DBA来解决.但在云计算的今天,人力运维和支撑已经变得不可能,自动化,智能化运维和服务支持日益迫切. 阿里云数据库团队在这方面不断的探索和积累,产出了CloudDBA.其目的就是要把我们已知问题和最佳实践能够以最简单的方式告诉用户,把我们多年使用数据库的经验传承给用户,方便客户使用云上数据库,给客户带来直接的价值.CloudDBA同时也在服务着内部业务,4000+的数据库实例之前需要一个team的运维人员,到现在我们只有一个同学,运维效率大幅提

Xmemcached的FAQ和性能调整建议

  一些常见的关于xmemcached的问题,收集整理,集中解答在此.事实上这里的大部分问题都可以在用户指南里找到. 一.XMemcached是什么? 经常碰到的一个问题是很多朋友对memcached不了解,误以为xmemcached本身是一个缓存系统.Memcached是一个开源的,C写的分布式key-value缓存,XMemcached只是它的一个访问客户端.Memcached通过网络协议跟客户端交互,通过客户端你才可以去使用memcached,xmemcached是它的java客户端之一.

websphere应用服务器性能调整建议,针对运行一段时间后当机

最近项目的websphere经常当机,运行一段时间后变慢然后当掉.查找了下网上的资料,尽管不是我在负责服务器,但是也是个学习的机会. 主要针对的症状:           平台:was5.1   base,http   server   1.3.28,oracle   8i,9i           症状:用户响应突然变慢,然后并连接不上80端口,重启后正常,一段时间后反复           解决方式:调整服务器参数,增加服务器的处理能力               1,更改http   se

SQL效率提升之一些SQL编写建议并有效利用索引_MsSql

1.日期属性列,不会因为有分秒差别而减慢查询速度 2. 使用LIKE比较进行查询时,如果模式以特定字符串如"abc%"开头,使用索引则会提高效率:如果模式以通配符如"%xyz"开头,则索引不起作用 3. OR会引起全表扫描,且和IN的作用相当 4. 尽量少用NOT 5. EXISTS 和 IN的执行效率是一样的 6. 用函数charindex()和前面加通配符%的LIKE执行效率一样 7. UNION并不绝对比OR的执行效率高 8. 字段提取要按照"需多少

SQL效率提升之一些SQL编写建议并有效利用索引

1.日期属性列,不会因为有分秒差别而减慢查询速度 2. 使用LIKE比较进行查询时,如果模式以特定字符串如"abc%"开头,使用索引则会提高效率:如果模式以通配符如"%xyz"开头,则索引不起作用 3. OR会引起全表扫描,且和IN的作用相当 4. 尽量少用NOT 5. EXISTS 和 IN的执行效率是一样的 6. 用函数charindex()和前面加通配符%的LIKE执行效率一样 7. UNION并不绝对比OR的执行效率高 8. 字段提取要按照"需多少

MS SQL基础教程:索引调整向导

8.5.1 索引与系统性能 索引可以加快数据检索的速度,但它会使数据的插入.删除和更新变慢.尤其是簇索引,数据是按照逻辑顺序存放在一定的物理位置,当变更数据时,根据新的数据顺序,需要将许多数据进行物理位置的移动,这将增加系统的负担.对非簇索引,数据更新时也需要更新索引页,这也需要占用系统时间.因此在一个表中使用太多的索引,会影响数据库的性能.对于一个经常会改变的表,应该尽量限制表只使用一个簇索引和不超过3~4 个非簇索引.对事务处理特别繁重的表,其索引应尽量不超过3 个. 8.5.2 索引调整向

2017年光伏电价调整探讨及建议

随着630之后组件价格出现大幅度下降,2017年光伏电价的调整必然提上议事日程.从长远来看,按照市场行情变化调整电站电价,是符合可再生能源发展的有力措施.而对2017年光伏电价调整所做的测算.探讨和建议,将有利于政府充分考虑行业发展特点,尽量准确制订出更为合理的电价. 一.光伏电价测算及回顾 首先我们将测算不同造价和不同年利用小时,分别在8%和9%的全投资回报率情况下的合理电价.这个测算的建立,以下列条件作为基础. 1.不考虑限电因素: 2.不考虑补贴不到位影响: 3.一类地区对应首年利用小时1

购物中心定位分析、调整方案及租金建议

商业调整从来都是一个不变的命题,对购物中心而言,调整也是保持购物中心最佳经营业绩和持续竞争优势的重要措施. 尽管购物中心调整的终极目的是租金收益的提升,但商业品质的提升也是资产增值的重要体现:而且只有以商业品质的提升为驱动力的调整,才能持续稳定地带动租金收益的提升.从这个逻辑出发,购物中心调整的首要关注点是对购物中心调整方向的把控. 购物中心定位分析,通过分析整场经营状况及外部环境变化得出定位调整结论:购物中心经营分析,通过分析各业态.品类及品牌的落位效果及经营表现,为落位调整提供建议.通过以上