使用SQL調整顧問進行語句優化

壹頁書發表於2014-02-12
SQL調整顧問 OCA/OCP認證考試指南 755頁

使用SQL調整顧問進行語句優化,實驗步驟如下:
1.收集AWR快照
2.建立實驗資料,迴圈全表掃描,造成問題SQL
3.收集AWR快照,比對兩次快照生成報表
4.使用調整顧問

1.收集AWR快照
    exec dbms_workload_repository.create_snapshot;

2.建立實驗資料,迴圈全表掃描
  1. create table test as select * from dba_objects;

  2. declare
  3.     oname varchar2(50);
  4. begin
  5.     for x in 1..10000 loop
  6.         select object_name into oname from test where object_id=20;
  7.     end loop;
  8. end;
  9. /
3.收集AWR快照,比對兩次快照生成報表
  1. exec dbms_workload_repository.create_snapshot;

  2. @?/rdbms/admin/awrrpt.sql
檢視報表,發現問題SQL


4.使用調整顧問
    
  1. set pagesize 200;
  2. set linesize 300;
  3. set long 10000;
  4. set longchunksize 10000;

  5. var l_tuning_task varchar2(100);
  6. exec :l_tuning_task := dbms_sqltune.create_tuning_task(sql_id => 'cjc3nbj3hqd3j');
  7. exec dbms_sqltune.execute_tuning_task(:l_tuning_task);
  8. select dbms_sqltune.report_tuning_task(:l_tuning_task) from dual;
檢視調整顧問的結果

可以看到調整顧問發現了兩個問題,並給出了處理的建議

調整顧問還將處理前後的執行計劃列出

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29254281/viewspace-1080490/,如需轉載,請註明出處,否則將追究法律責任。

相關文章