Oracle调整顾问(SQL Tuning Advisor 与 SQL Access Advisor )

php中文网
发布: 2016-06-07 17:33:30
原创
1458人浏览过

在Oracle数据库出现性能问题时,使用Oracle本身的工具包,给出合理的调优建议是比较省力的做法。将一条或多条SQL语句做为输入内容

在oracle数据库出现性能问题时,使用oracle本身的工具包,给出合理的调优建议是比较省力的做法。

下面两种包的介绍及具体做法。

SQL Tuning Advisor 粒度最小的调整工具.

将一条或多条SQL语句做为输入内容,,分析所有访问路径,然后生成改进SQL语句的建议,并提出索引,物化视图和分区方案来提高应用程序的总体性能。
另外,在维护窗口中,Oracle也会针对Automatic Workload Repository(AWR) 来确定和记录的高负载语句自动化运行SQL Tuning Advisor
SQL Access Advisor

它涉及工作量中所有SQL语句,并提出索引,特化视图和分区方案来提高应用程序的总体性能。

小区别:

  SQL Tuning Advisor 分别调整每条SQL语句
  SQL Access Advisor 同时调整所有SQL语句

SQL Tuning Advisor :

1. 在匿名PL/SQL块中,为SQL 语句定义调整任务。

declare
 tune_task_name varchar2(30)   ;
 bad_sql_stmt clob;
begin
 bad_sql_stmt := 'select distinct id from demo.txcl';
 tune_task_name := dbms_sqltune.create_tuning_task
  ( sql_text => bad_sql_stmt,
    user_name => 'DEMO',
    scope => 'COMPREHENSIVE',
    time_limit => 60,
    task_name => 'xcl_sql_tuing_task',
    description => 'See what is wrong with the SELECT'
   ) ;
end;
/

2.  设置任务时指定的时限值是60分钟.

begin
 dbms_sqltune.set_tuning_task_parameter
  (task_name => 'xcl_sql_tuing_task',
  parameter => 'TIME_LIMIT',
  value => 30
  );
end;
/

3. 使用EXECUTE_TUNING_TASK过程启动调整任务

begin
 dbms_sqltune.execute_tuning_task
  (task_name => 'xcl_sql_tuing_task');
end;
/

4. 通过连接DBA_ADVISOR_TASKS和V$ADVISOR_PROGRESS来查任务状态
select task_name,status,sofar,totalwork

from dba_advisor_tasks 
join v$advisor_progress using(task_id)
where task_name = 'xcl_sql_tuing_task';

5. 查看调整任务给出的建议

select dbms_sqltune.report_tuning_task('xcl_sql_tuing_task') from dual;

更多详情见请继续阅读下一页的精彩内容:

 

推荐阅读

Linux上Oracle 11g安装步骤图文详解

Linux操作系统中Oracle 11g数据库安装过程图文详解

CentOS 5.6 上安装 Oracle 11g R2 单实例数据库详解

Oracle VM虚拟机中安装Oracle Clusterware 11g步骤

VM虚拟机下在Linux上安装Oracle 11G单实例数据库

linux

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号