在Oracle实例间移动SQL调整工具集
SQL调整工具集(SQL Tuning Set,STS)是Oracle 10g的SQL Tuning Advisor特性的一个组成部分。每个调整工具集都包含一个或几个SQL语句,以及正确解释它们所需的上下文信息。SQL Tuning Advisor用一个调整工具集作为输入,检查其中的语句并为它们提出优化建议。
SQL调整工具集(SQL Tuning Set,STS)是Oracle 10g的SQL Tuning Advisor特性的一个组成部分。每个调整工具集都包含一个或几个SQL语句,以及正确解释它们所需的上下文信息。SQL Tuning Advisor用一个调整工具集作为输入,检查其中的语句并为它们提出优化建议。
由于没有办法在不同的实例间移动调整工具集,Oracle 10g的最初版本要求在具有SQL Tuning Set的同一台机器上执行这种分析。这增加了生产系统的管理开销,并且需要在生产实例中给开发者比正常情况下更高的特权。
Oracle 10g第二版(release 2)中增加了移动SQL Tuning Set的功能。使用一个中转表和DBMS_SQLTUNE类中的过程,你就可以从创建SQL Tuning Set的实例中将它们输出,然后输入到一个测试实例中进行分析。
《Oracle数据库性能调整指导》一文详细说明了这个转换过程。简单来说,这个过程包括以下步骤:
建立一个或几个SQL Tuning Set。STS可以在Oracle Enterprise Manager中通过现有的AWR快照、保存的快照集或一个定义的SQL历史时期来创建。它们还可以使用DBMS_SQLTUNE中的过程手动创建。
使用DBMS_SQLTUNE中的PAC_STGTAB_SQLSET过程建立一个中转表,保存将要传输的STS。
使用PAC_STGTAB_SQLSET过程加载含有现存调整工具集的中转表。
像移动其它表一样(如通过Datapump输出和输入)移动中转表。
在目标系统中,使用UNPACK_STGTAB_SQLSET过程将调整工具集输入到系统中。然后就可以使用DBMS_SQLTUNE或Enterprise Manager对它们进行分析。
Bob Watkins(OCP、MCDBA、MCSE、MCT)是一位有25年经验的计算机专业人士,,从事过技术培训师、顾问与数据库管理员等职。
注:更多精彩文章请关注三联编程教程栏目。
推荐阅读