使用SQL调优顾问的关键在于获取需要优化的SQL在执行时对应的sql id
2017-12-28 15:21
302 查看
/*使用SQL调优顾问的关键在于获取需要优化的SQL在执行时对应的sql id*/ /*步骤1,查询SQL的ID,方法1:*/ /*1.创建快照*/ exec dbms_workload_repository.create_snapshot(); /*2.执行几次SQL语句或在应用中刷新几次加载缓慢的模块*/ /*3.再次创建快照*/ exec dbms_workload_repository.create_snapshot(); /*4.将两个快照间的AWR报告打印出来,并在SQL Statistics模块查找最耗时的SQL对应的sql id AWR报告生成的方法:在cmd命令行中登录数据库后执行以下脚本*/ @?/rdbms/admin/awrrpt.sql /*步骤1,查询SQL的ID,方法2:*/ select t.SQL_ID,t.SQL_TEXT,t.LAST_ACTIVE_TIME from v$sql t where t.SQL_TEXT like '%employees_tune%' order by t.LAST_ACTIVE_TIME desc; /*步骤2,创建SQL调优任务*/ var tuning_task varchar2(100); declare l_sql_id v$session.PREV_SQL_ID%type; l_tuning_task varchar2(100); begin ---此处l_sql_id变量需要填写以上任意一种方法获取的SQL ID l_sql_id :='g3pz256nc394n'; l_tuning_task := dbms_sqltune.create_tuning_task(sql_id => l_sql_id); :tuning_task := l_tuning_task; dbms_sqltune.execute_tuning_task(l_tuning_task); dbms_output.put_line(l_tuning_task); end; / /*步骤3,打印调优建议信息,注意索引的建议新和sql profile*/ print tuning_task; set long 100000; set lines 2000; select dbms_sqltune.report_tuning_task(:tuning_task) from dual; /*步骤4,如果建议信息中有建议的索引,添加索引即可,如果出现sql_profile,可以更换SQL语句的sql profile,更换语句如下:*/ exec dbms_sqltune.accept_sql_profile(task_name => :tuning_task,replace => true,force_match => true);
相关文章推荐
- 使用优化器性能视图获取SQL语句执行环境
- 使用优化器性能视图获取SQL语句执行环境
- 使用优化器性能视图获取SQL语句执行环境
- 《高性能SQL调优精要与案例解析》一书谈主流关系库SQL调优(优化&TUNING)技术精髓之——执行计划获取及理解
- 使用plsql执行计划进行sql调优(转载)
- 使用 EXPLAIN PLAN 获取SQL语句执行计划
- [SQL Server]查询某个SPID,session_id对应的执行sql.
- 使用 EXPLAIN PLAN 获取SQL语句执行计划
- 灵动标签的用法 ecms通过执行sql获取需要的记录
- SQL优化--使用 EXISTS 代替 IN 和 inner join来选择正确的执行计划
- Scripts:根据sql_id从AWR中查询执行计划(个人比较喜欢使用这个)display_awr_plan.sql
- [Oracle PL/SQL]当数据表设计成具有父ID的时候,当需要选择所有与父ID同根生的所有节点的时候,使用的SQL语句
- 使用 EXPLAIN PLAN 获取SQL语句执行计划
- sql 查询条件中需要使用 != 情况下的优化
- 技术转载(鼠标点击X窗口关闭IE的同时清空session,最基本的就是处理用户重复登陆需要用到,我想这个的关键在于如何捕捉到关闭IE这个动作,之后再根据自身的需要使用session.invalidate()或者session.removeAttribute( "xxx "))
- 使用 EXPLAIN PLAN 获取SQL语句执行计划
- Oracle 性能调优之:使用 V$SQL_PLAN 视图查询内存中的执行计划
- 【转】 SQL优化--使用 EXISTS 代替 IN 和 inner join来选择正确的执行计划
- SQL优化-使用执行计划
- Sql2005性能工具(SQL Server Profiler和数据库引擎优化顾问)使用方法详解