• How to use STA(sql tuning advisor)


    一、手工生成Sql tuning advisor 
    1、SQL text format:
    DECLARE
      my_task_name VARCHAR2(30);
      my_sqltext   CLOB;
    BEGIN
      my_sqltext := 'SELECT * FROM DBA_SEGMENTS WHERE OWNER=''CLIC'' AND SEGMENT_TYPE=''TABLE''';
      my_task_name := DBMS_SQLTUNE.CREATE_TUNING_TASK(sql_text    => my_sqltext,
                                                      scope       => 'COMPREHENSIVE',
                                                      time_limit  => 60,
                                                      task_name   => 'test_sql_tuning_task1',
                                                      description => 'Task to tune a query');
      DBMS_SQLTUNE.EXECUTE_TUNING_TASK(task_name => 'test_sql_tuning_task1');
    END;
    /


    2、SQL id format:
    DECLARE
      my_task_name VARCHAR2(30);
      my_sqltext   CLOB;
    BEGIN
      my_task_name := DBMS_SQLTUNE.CREATE_TUNING_TASK(sql_id => 'b3uaak09jfaxc',
                                                      scope       => 'COMPREHENSIVE',
                                                      time_limit  => 60,
                                                      task_name   => 'test_sql_tuning_task1',
                                                      description => 'Task to tune a query');
      DBMS_SQLTUNE.EXECUTE_TUNING_TASK(task_name => 'test_sql_tuning_task1');
    END;
    /


    二、查看生成的STAreport:


    set long 999999
    set LONGCHUNKSIZE 999999
    set serveroutput on size 999999
    set linesize 200
    select dbms_sqltune.report_tuning_task('test_sql_tuning_task1') from dual;


    exec dbms_sqltune.drop_tuning_task('test_sql_tuning_task1');


    删除优化任务
    SQL> execdbms_sqltune.drop_tuning_task(task_name => 'li_sql_1');


    三、accept sql profile
    接受建议的 SQL 概要文件,即创建SQL_Profle
    SQL> execute dbms_sqltune.accept_sql_profile(task_name => 'test_sql_tuning_task1',task_owner =>'SYS', replace => TRUE);
     
    查看创建起来的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='test_sql_tuning_task1';


    删除SQL_Profile
    SQL>exec dbms_sqltune.drop_sql_profile(name =>'SYS_SQLPROF_01411bdf99410002');











  • 相关阅读:
    【分享】Asp.net Core相关教程及开源项目
    【分享】Vue 资源典藏(UI组件、开发框架、服务端、辅助工具、应用实例、Demo示例)
    【分享】2017 开源中国新增开源项目排行榜 TOP 100
    【分享】Web前端开发第三方插件大全
    105个软件测试工具大放送
    2016年开源巨献:来自百度的71款开源项目
    VS2015 使用及插件推荐
    10大H5前端框架
    国务院关于积极推进“互联网+”行动的指导意见
    将HTML5封装成android应用APK文件的几种方法
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/5160151.html
Copyright © 2020-2023  润新知