UE(p) from table(
DBMS_SQLTUNE.SELECT_WORKLOAD_REPOSITORY(
&begin_snap_id,
&end_snap_id,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
'ALL')) p;
DBMS_SQLTUNE.LOAD_SQLSET(
sqlset_name => 'my_sql_tuning_set',
populate_cursor => baseline_cursor);
end;
/
SELECT * FROM TABLE(DBMS_SQLTUNE.SELECT_SQLSET(
'my_sql_tuning_set',
'(disk_reads/buffer_gets) >= 0.75'));
---3.н¨ËѼ¯baselineµÄ±í
BEGIN
dbms_spm.create_stgtab_baseline(
table_name => 'BASELINE_STG01',
table_owner => 'SCOTT',
db_version => DBMS_SQLTUNE.STS_STGTAB_11_2_VERSION
); --²»ÄÜн¨ÔÚSYSÕË»§ÏÂ
END;
/
----4.°ÑBaselineÊý¾ÝÌîµ½±í
BEGIN
DBMS_SQLTUNE.pack_stgtab_sqlset(
sqlset_name => 'OCPYANG_STS',
sqlset_owner => 'SCOTT',
staging_table_name => 'BASELINE_STG01',
staging_schema_owner => 'SCOTT',
db_version => DBMS_SQLTUNE.STS_STGTAB_11_2_VERSION );
END;
/
/**********Óï·¨
DBMS_SQLTUNE.PACK_STGTAB_SQLSET (
sqlset_name IN VARCHAR2,
sqlset_owner IN VARCHAR2 := NULL,
staging_table_name IN VARCHAR2,
staging_schema_owner IN VARCHAR2 := NULL,
db_version IN NUMBER := NULL);
***********/
---5.´«µÝÊý¾Ýµ½Ä¿±ê·þÎñÆ÷
ʹÓÃOracle Data Pump or database link or expdpµÈ½«±íBASELINE_STG01
Ç¨ÒÆµ½Ä¿±ê·þÎñÆ÷.
---6.Ä¿±ê·þÎñÆ÷н¨STS
BEGIN
DBMS_SQLTUNE.CREATE_SQLSET(
sqlset_name => 'OCPYANG_STS01',
sqlset_owner => 'SCOTT',
description => 'ocpyangtest');
END;
/
----7.µ¼ÈëÊý¾Ýµ½Ä¿±ê·þÎñÆ÷µÄSTS
BEGIN
DBMS_SQLTUNE.UNPACK_STGTAB_SQLSET(
sqlset_name => 'OCPYANG_STS01',
replace => TRUE,
staging_table_name => 'BASELINE_STG01');
END;
/
---8.ͨ¹ýSPM BASELINEµÄ°üÀ´°ÑSQLµ÷Óż¯ÀïµÄSQL¶¼ÅúÁ¿µÄÉú³ÉBASELINE
declare
ret number;
begin
ret := dbms_spm.load_plans_from_sqlset(
sqlset_name => 'OCPYANG_STS01',
sqlset_owner => 'SCOTT');
end;
/
|