{"id":490,"date":"2015-02-27T10:00:45","date_gmt":"2015-02-27T02:00:45","guid":{"rendered":"http:\/\/www.royalwzy.com\/?p=490"},"modified":"2015-09-10T21:53:02","modified_gmt":"2015-09-10T13:53:02","slug":"oracle-spa","status":"publish","type":"post","link":"http:\/\/www.royalwzy.com\/?p=490","title":{"rendered":"Oracle SPA\u4ecb\u7ecd"},"content":{"rendered":"<p>Sql Performance Analyzer (SPA)<br \/>\n\u8fd9\u662foracle 11g\u7684\u65b0\u7279\u6027 \u53ef\u5bf9\u4e00\u90e8\u5206sql\u7ed3\u679c\u8fdb\u884c\u6027\u80fd\u5206\u6790 \u9002\u7528\u4e8e\u6570\u636e\u5347\u7ea7 \u8fc1\u79fb\u505a\u524d\u540e\u7684\u6bd4\u8f83<br \/>\n\u5206\u6790\u7684\u7ed3\u679c\u4f1a\u6c38\u8fdc\u5b58\u5728\u7684\u6570\u636e\u5e93\u5185\u90e8\u3002\u548c\u6570\u636e\u5e93\u91cd\u6f14\u4e0d\u540c\u7684\u662fspa\u53ea\u80fd\u5206\u6790sql\u8bed\u53e5\u4e14\u53ea\u6709\u67e5\u8be2\u8bed\u53e5<br \/>\n\u6b65\u9aa4\u5982\u4e0b\uff1a<br \/>\n1.\u5728\u751f\u4ea7\u5e93\u6355\u83b7\u5177\u4f53\u8bed\u53e5<br \/>\n2.\u628a\u6355\u83b7\u7684\u8bed\u53e5\u6253\u5305\u4f20\u8f93\u5230\u6d4b\u8bd5\u73af\u5883<br \/>\n3.\u521b\u5efaSPA\u4efb\u52a1\u5728\u6d4b\u8bd5\u73af\u5883<br \/>\n4.\u751f\u6210\u6539\u53d8\u4e4b\u524d\u7684\u6267\u884c\u4fe1\u606f<br \/>\n5.\u505a\u6539\u53d8\uff08\u5347\u7ea7\u6216\u8005\u6253\u8865\u4e01\u6216\u8005\u6539\u53c2\u6570\u6216\u8005\u7b49\u7b49\u3002\u3002\uff09<br \/>\n6.\u751f\u6210\u6539\u53d8\u4e4b\u540e\u7684\u6267\u884c\u4fe1\u606f<br \/>\n7.\u5bf9\u4e8e\u4e24\u4efd\u4fe1\u606f\uff08\u53ef\u751f\u6210\u62a5\u544a\u6587\u4ef6\uff09<\/p>\n<p>CREATE USER ucjmh IDENTIFIED BY ucjmh;<br \/>\nGRANT DBA TO ucjmh;<br \/>\nconn ucjmh\/ucjmh \u2013\u521b\u5efa\u4e00\u4e2a\u7528\u6237<br \/>\n\u2013\u5efa\u51e0\u5f20\u8868<br \/>\nCREATE TABLE uc_objects AS SELECT * FROM dba_objects;<br \/>\nCREATE TABLE uc_tables AS SELECT * FROM dba_tables;<br \/>\nCREATE TABLE uc_users AS SELECT * FROM dba_users;<br \/>\n\u2013\u505a\u4e00\u4e9b\u67e5\u8be2<br \/>\nselect \/*UCJMH*\/ * from uc_objects;<br \/>\nselect \/*UCJMH*\/ * from uc_tables;<br \/>\nselect \/*UCJMH*\/ * from uc_users;<br \/>\n\u2013\u751f\u6210\u4e00\u4e2asqlset<br \/>\nbegin<br \/>\nsys.dbms_sqltune.create_sqlset(<br \/>\nsqlset_name =&gt; \u2018uc_sts\u2019,<br \/>\nsqlset_owner =&gt; \u2018UCJMH\u2019);<br \/>\nend;<br \/>\n\/<\/p>\n<p>PL\/SQL procedure successfully completed.<\/p>\n<p>\u2013\u67e5\u770b\u4e00\u4e0b\u662f\u5426\u751f\u6210\u6210\u529f<br \/>\nSQL&gt; select name from user_sqlset;<\/p>\n<p>NAME<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014<br \/>\nuc_sts<\/p>\n<p>\u2013\u628a\u9700\u8981\u7684sql\u653e\u5230\u8fd9\u4e2asqlset\u91cc<br \/>\ndeclare<br \/>\nstscur dbms_sqltune.sqlset_cursor;<br \/>\nbegin<br \/>\nopen stscur for<br \/>\nselect value(P) from table(<br \/>\ndbms_sqltune.select_cursor_cache(<br \/>\n\u2018sql_text like \u201dselect \/*UCJMH*\/%\u201d\u2019,<br \/>\nnull,null,null,null,null,null,\u2019ALL\u2019)) P;<br \/>\ndbms_sqltune.load_sqlset(<br \/>\nsqlset_name =&gt;\u2019uc_sts\u2019, \u2013\u8fd9\u91cc\u662f\u533a\u5206\u5927\u5c0f\u5199\u7684 \u5982\u679c\u4f60\u4e0a\u9762\u5199\u7684\u5c0f\u5199 \u4e0d\u8981\u60f3\u5f53\u7136\u8ba4\u4e3aORACLE\u4f1a\u5185\u90e8\u8f6c\u6362\u6210\u5927\u5199<br \/>\npopulate_cursor =&gt; stscur,<br \/>\nsqlset_owner =&gt;\u2019UCJMH\u2019);<br \/>\nend;<\/p>\n<p>PL\/SQL procedure successfully completed<\/p>\n<p>SQL&gt; select sql_text from user_sqlset_statements where sqlset_name=\u2019uc_sts&#8217;;<\/p>\n<p>SQL_TEXT<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2013<br \/>\nselect \/*UCJMH*\/ * from uc_objects<br \/>\nselect \/*UCJMH*\/ * from uc_users<br \/>\nselect \/*UCJMH*\/ * from uc_tables<\/p>\n<p>\u2013\u6216\u8005<br \/>\nSQL&gt; select sql_Text from table(dbms_sqltune.select_sqlset(\u2018uc_sts\u2019));<\/p>\n<p>SQL_TEXT<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2013<br \/>\nselect \/*UCJMH*\/ * from uc_objects<br \/>\nselect \/*UCJMH*\/ * from uc_users<br \/>\nselect \/*UCJMH*\/ * from uc_tables<\/p>\n<p>\u521b\u5efa\u6682\u5b58\u8868\u4fdd\u5b58STS\uff1a<br \/>\nexec DBMS_SQLTUNE.CREATE_STGTAB_SQLSET(\u2018UC_STS_TAB\u2019,\u2019UCJMH\u2019);<\/p>\n<p>SQL&gt; select count(*) from uc_sts_tab;<\/p>\n<p>COUNT(*)<br \/>\n\u2014\u2014\u2014-<br \/>\n0<br \/>\n\u2013\u4e0a\u9762\u7684\u6b65\u9aa4\u53ea\u662f\u521b\u5efa\u4e86\u4e00\u4e2a\u7528\u6765\u6682\u5b58set\u7684\u8868 \u4f46\u662f\u5e76\u6ca1\u6709\u771f\u7684\u5df2\u7ecf\u628asql\u653e\u8fdb\u53bb<br \/>\n\u2013\u628aSTS\u52a0\u8f7d\u5230\u6682\u5b58\u8868\u91cc\uff1a<br \/>\nexec DBMS_SQLTUNE.PACK_STGTAB_SQLSET(\u2018uc_sts\u2019,\u2019UCJMH\u2019,\u2019UC_STS_TAB\u2019,\u2019UCJMH\u2019);<\/p>\n<p>PL\/SQL procedure successfully completed.<\/p>\n<p>SQL&gt; select count(*) from uc_sts_tab;<\/p>\n<p>COUNT(*)<br \/>\n\u2014\u2014\u2014-<br \/>\n6<\/p>\n<p>\u2013\u4e0d\u662f\u5e94\u8be5\u662f3\u6761sql\u5417 \u95ee\u4ec0\u4e48\u662f6\u884c\u8bb0\u5f55\u5462\uff1f\u4ed4\u7ec6\u770b\u770b\u53ef\u4ee5\u53d1\u73b0\u6bcf\u4e2asql_id\u5360\u4e24\u884c \u4e00\u884c\u662fsql \u4e00\u884c\u662f\u7edf\u8ba1\u4fe1\u606f\u548c\u6267\u884c\u8bb0\u5212\u7b49\u4fe1\u606f<\/p>\n<p>\u628a\u6682\u5b58\u8868\u5bfc\u51fa\u751f\u4ea7\u73af\u5883 \u5bfc\u5165\u6d4b\u8bd5\u73af\u5883\uff08\u6211\u8fd9\u91cc\u6d4b\u8bd5\u73af\u5883\u6ca1\u6709\u4e1c\u897f \u6211\u76f4\u63a5\u628a\u6574\u4e2a\u7528\u6237\u5bfc\u8fc7\u53bb \u5982\u679c\u4f60\u4eec\u5176\u5b83\u8868\u5df2\u7ecf\u5b58\u5728\u4e86\u53ef\u4ee5\u53ea\u5bfc\u4e00\u5f20\u6682\u5b58\u8868\uff09<\/p>\n<p>create or replace directory dmp as \u2018\/home\/oracle\/dmp&#8217;;<br \/>\nEXIT<br \/>\nexpdp ucjmh\/ucjmh directory=dmp dumpfile=uc.dmp<br \/>\nexport ORACLE_SID=emrep<br \/>\nsqlplus \/ AS SYSDBA<br \/>\ncreate or replace directory dmp as \u2018\/home\/oracle\/dmp&#8217;;<br \/>\nEXIT<br \/>\nimpdp system\/oracle directory=dmp dumpfile=uc.dmp<\/p>\n<p>\u628aSTS\u4ece\u6682\u5b58\u8868\u91cc\u653e\u5165\u6570\u636e\u5b57\u5178\u91cc\uff1a<br \/>\nexec DBMS_SQLTUNE.UNPACK_STGTAB_SQLSET(\u2018uc_sts\u2019,\u2019UCJMH\u2019,TRUE,\u2019UC_STS_TAB\u2019,\u2019UCJMH\u2019); \u2013true\u8868\u793a\u5982\u679c\u6709\u7684\u8bdd\u662f\u5426\u66ff\u6362<\/p>\n<p>PL\/SQL procedure successfully completed.<\/p>\n<p>\u2013\u521b\u5efa\u4e00\u4e2aspa\u4efb\u52a1<br \/>\nSQL&gt; var tname varchar2(20);<br \/>\nSQL&gt; exec :tname:= dbms_sqlpa.create_analysis_task(sqlset_name =&gt; \u2018uc_sts\u2019, task_name =&gt; \u2018MYSPA\u2019);<\/p>\n<p>PL\/SQL procedure successfully completed.<\/p>\n<p>\u2013\u6267\u884c\u4efb\u52a1\u4ece\u800c\u6784\u5efabefore change data<br \/>\nSQL&gt; exec dbms_sqlpa.execute_analysis_task(task_name =&gt; :tname, execution_type =&gt; \u2018TEST EXECUTE\u2019, execution_name =&gt; \u2018before\u2019);<\/p>\n<p>PL\/SQL procedure successfully completed.<\/p>\n<p>\u2013\u751f\u6210before change\u7684\u62a5\u8868<br \/>\nSQL&gt; set long 99999<br \/>\nSQL&gt; SELECT dbms_sqlpa.report_analysis_task(task_name =&gt; :tname, type=&gt;\u2019text\u2019, section=&gt;\u2019summary\u2019) FROM dual;<\/p>\n<p>DBMS_SQLPA.REPORT_ANALYSIS_TASK(TASK_NAME=&gt;:TNAME,TYPE=&gt;\u2019TEXT\u2019,SECTION=&gt;\u2019SUMMARY\u2019<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2013<br \/>\nGENERAL INFORMATION SECTION<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<br \/>\nTuning Task Name : MYSPA<br \/>\nTuning Task Owner : UCJMH<br \/>\nWorkload Type : SQL Tuning Set<br \/>\nExecution Count : 1<br \/>\nCurrent Execution : before<br \/>\nExecution Type : TEST EXECUTE<br \/>\nScope : COMPREHENSIVE<br \/>\nCompletion Status : COMPLETED<br \/>\nStarted at : 11\/01\/2014 19:27:01<\/p>\n<p>DBMS_SQLPA.REPORT_ANALYSIS_TASK(TASK_NAME=&gt;:TNAME,TYPE=&gt;\u2019TEXT\u2019,SECTION=&gt;\u2019SUMMARY\u2019<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2013<br \/>\nCompleted at : 11\/01\/2014 19:27:01<br \/>\nSQL Tuning Set (STS) Name : uc_sts<br \/>\nSQL Tuning Set Owner : UCJMH<br \/>\nNumber of Statements in the STS : 3<br \/>\nNumber of SQLs Analyzed : 3<br \/>\nNumber of SQLs in the Report : 3<\/p>\n<p>\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<br \/>\nSUMMARY SECTION<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<br \/>\nSQL Statements Ordered by Elapsed Time<\/p>\n<p>DBMS_SQLPA.REPORT_ANALYSIS_TASK(TASK_NAME=&gt;:TNAME,TYPE=&gt;\u2019TEXT\u2019,SECTION=&gt;\u2019SUMMARY\u2019<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2013<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<br \/>\nParse Elapsed CPU Buffer Optimizer<br \/>\nobject ID SQL ID Time (s) Time (s) Time (s) Gets Cost<br \/>\n\u2014\u2014\u2014- \u2014\u2014\u2014\u2014- \u2014\u2014\u2013 \u2014\u2014\u2013 \u2014\u2014\u2013 \u2014\u2014\u2013 \u2014\u2014\u2014<br \/>\n3 5d0v1n7gt8j2y .014787 .016058 .015664 1013 284<br \/>\n5 g9shuu1cxbqqz .006716 .001369 .001333 76 23<br \/>\n4 71tf6tnk513p5 .002394 .000084 .000111 3 3<\/p>\n<p>\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<\/p>\n<p>\u2013\u505a\u4f60\u8981\u505a\u7684\u53d8\u5316\uff0c\u6bd4\u5982\u4fee\u6539\u53c2\u6570\u3001\u5347\u7ea7\u786c\u4ef6\u3001\u5347\u7ea7\u64cd\u4f5c\u7cfb\u7edf\u7b49\u7b49\u3002<br \/>\nSQL&gt; exec dbms_stats.gather_schema_stats(USER);<\/p>\n<p>PL\/SQL procedure successfully completed.<br \/>\n\u6784\u5efaafter change data<br \/>\nSQL&gt; EXEC dbms_sqlpa.execute_analysis_task(task_name =&gt; :tname, execution_type =&gt; \u2018TEST EXECUTE\u2019, execution_name =&gt; \u2018after\u2019);<\/p>\n<p>PL\/SQL procedure successfully completed.<\/p>\n<p>\u751f\u6210after change\u7684\u62a5\u8868<br \/>\nSQL&gt; SELECT dbms_sqlpa.report_analysis_task(task_name =&gt; :tname,type=&gt;\u2019text\u2019, section=&gt;\u2019summary\u2019) FROM dual;<\/p>\n<p>DBMS_SQLPA.REPORT_ANALYSIS_TASK(TASK_NAME=&gt;:TNAME,TYPE=&gt;\u2019TEXT\u2019,SECTION=&gt;\u2019SUMMARY\u2019<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2013<br \/>\nGENERAL INFORMATION SECTION<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<br \/>\nTuning Task Name : MYSPA<br \/>\nTuning Task Owner : UCJMH<br \/>\nWorkload Type : SQL Tuning Set<br \/>\nExecution Count : 2<br \/>\nCurrent Execution : after<br \/>\nExecution Type : TEST EXECUTE<br \/>\nScope : COMPREHENSIVE<br \/>\nCompletion Status : COMPLETED<br \/>\nStarted at : 11\/01\/2014 19:30:29<\/p>\n<p>DBMS_SQLPA.REPORT_ANALYSIS_TASK(TASK_NAME=&gt;:TNAME,TYPE=&gt;\u2019TEXT\u2019,SECTION=&gt;\u2019SUMMARY\u2019<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2013<br \/>\nCompleted at : 11\/01\/2014 19:30:29<br \/>\nSQL Tuning Set (STS) Name : uc_sts<br \/>\nSQL Tuning Set Owner : UCJMH<br \/>\nNumber of Statements in the STS : 3<br \/>\nNumber of SQLs Analyzed : 3<br \/>\nNumber of SQLs in the Report : 3<\/p>\n<p>\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<br \/>\nSUMMARY SECTION<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<br \/>\nSQL Statements Ordered by Elapsed Time<\/p>\n<p>DBMS_SQLPA.REPORT_ANALYSIS_TASK(TASK_NAME=&gt;:TNAME,TYPE=&gt;\u2019TEXT\u2019,SECTION=&gt;\u2019SUMMARY\u2019<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2013<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<br \/>\nParse Elapsed CPU Buffer Optimizer<br \/>\nobject ID SQL ID Time (s) Time (s) Time (s) Gets Cost<br \/>\n\u2014\u2014\u2014- \u2014\u2014\u2014\u2014- \u2014\u2014\u2013 \u2014\u2014\u2013 \u2014\u2014\u2013 \u2014\u2014\u2013 \u2014\u2014\u2014<br \/>\n7 5d0v1n7gt8j2y .000147 .017201 .016886 1012 284<br \/>\n9 g9shuu1cxbqqz .000244 .001269 .001444 75 23<br \/>\n8 71tf6tnk513p5 .000423 .000064 0 2 3<\/p>\n<p>\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<\/p>\n<p>\u2013\u6bd4\u8f83before\u548cafter<br \/>\nEXEC dbms_sqlpa.execute_analysis_task(task_name =&gt; :tname, execution_type =&gt; \u2018COMPARE PERFORMANCE\u2019);<\/p>\n<p>\u2013\u751f\u6210\u5206\u6790\u62a5\u8868<br \/>\nSQL&gt; SELECT dbms_sqlpa.report_analysis_task(task_name =&gt; :tname, type=&gt;\u2019text\u2019, section=&gt;\u2019summary\u2019) FROM dual;<\/p>\n<p>DBMS_SQLPA.REPORT_ANALYSIS_TASK(TASK_NAME=&gt;:TNAME,TYPE=&gt;\u2019TEXT\u2019,SECTION=&gt;\u2019SUMMARY\u2019<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2013<br \/>\nGENERAL INFORMATION SECTION<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<br \/>\nTuning Task Name : MYSPA<br \/>\nTuning Task Owner : UCJMH<br \/>\nWorkload Type : SQL Tuning Set<br \/>\nExecution Count : 2<br \/>\nCurrent Execution : after<br \/>\nExecution Type : TEST EXECUTE<br \/>\nScope : COMPREHENSIVE<br \/>\nCompletion Status : COMPLETED<br \/>\nStarted at : 11\/01\/2014 19:30:29<\/p>\n<p>DBMS_SQLPA.REPORT_ANALYSIS_TASK(TASK_NAME=&gt;:TNAME,TYPE=&gt;\u2019TEXT\u2019,SECTION=&gt;\u2019SUMMARY\u2019<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2013<br \/>\nCompleted at : 11\/01\/2014 19:30:29<br \/>\nSQL Tuning Set (STS) Name : uc_sts<br \/>\nSQL Tuning Set Owner : UCJMH<br \/>\nNumber of Statements in the STS : 3<br \/>\nNumber of SQLs Analyzed : 3<br \/>\nNumber of SQLs in the Report : 3<\/p>\n<p>\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<br \/>\nSUMMARY SECTION<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<br \/>\nSQL Statements Ordered by Elapsed Time<\/p>\n<p>DBMS_SQLPA.REPORT_ANALYSIS_TASK(TASK_NAME=&gt;:TNAME,TYPE=&gt;\u2019TEXT\u2019,SECTION=&gt;\u2019SUMMARY\u2019<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2013<br \/>\n\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<br \/>\nParse Elapsed CPU Buffer Optimizer<br \/>\nobject ID SQL ID Time (s) Time (s) Time (s) Gets Cost<br \/>\n\u2014\u2014\u2014- \u2014\u2014\u2014\u2014- \u2014\u2014\u2013 \u2014\u2014\u2013 \u2014\u2014\u2013 \u2014\u2014\u2013 \u2014\u2014\u2014<br \/>\n7 5d0v1n7gt8j2y .000147 .017201 .016886 1012 284<br \/>\n9 g9shuu1cxbqqz .000244 .001269 .001444 75 23<br \/>\n8 71tf6tnk513p5 .000423 .000064 0 2 3<\/p>\n<p>\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014\u2014-<\/p>\n<p>\u5220\u9664\u4efb\u52a1\uff1a<br \/>\nselect * from DBA_SQLSET_REFERENCES where SQLSET_NAME=\u2019uc_sts&#8217;;<br \/>\nexec dbms_sqltune.drop_tuning_task(\u2018MYSPA\u2019);<\/p>\n<p>\u5220\u9664\u6682\u5b58\u8868\u548cSTS\uff1a<br \/>\ndrop table hr.hsj_sts_tab purge;<br \/>\nexec dbms_sqltune.drop_sqlset(\u2018uc_sts\u2019);<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sql Performance Analyzer (SPA) \u8fd9\u662foracle 11g\u7684\u65b0\u7279\u6027 \u53ef\u5bf9\u4e00\u90e8\u5206sq [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[34,8],"class_list":["post-490","post","type-post","status-publish","format-standard","hentry","category-oracle","tag-oracle","tag-performance"],"_links":{"self":[{"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=\/wp\/v2\/posts\/490","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=490"}],"version-history":[{"count":1,"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=\/wp\/v2\/posts\/490\/revisions"}],"predecessor-version":[{"id":1006,"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=\/wp\/v2\/posts\/490\/revisions\/1006"}],"wp:attachment":[{"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=490"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=490"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.royalwzy.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=490"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}