WEB开发网
开发学院数据库Oracle Oracle数据库11g:SQL计划管理(三) 阅读

Oracle数据库11g:SQL计划管理(三)

 2008-09-04 12:50:18 来源:WEB开发网   
核心提示:本系列前面的文章探讨了Oracle数据库11g新的SQL计划管理(SPM)特色,它可以用于Oracle10g升级到Oracle11g时捕获和载入SQL计划基线,Oracle数据库11g:SQL计划管理(三),以便在数据库升级过程中消除SQL语句性能倒退,前面的文章也讲述了如何保证新应用程序代码在部署到生产环境之前,然后

本系列前面的文章探讨了Oracle数据库11g新的SQL计划管理(SPM)特色,它可以用于Oracle10g升级到Oracle11g时捕获和载入SQL计划基线,以便在数据库升级过程中消除SQL语句性能倒退,前面的文章也讲述了如何保证新应用程序代码在部署到生产环境之前,为SQL语句选择最有效的执行计划。

本文将讲述如何使用SPM:

◆当它们尝试利用Oracle11g新的优化器特色时,限制SQL语句性能不必要的倒退。 

◆通过手工方法捕获特定SQL语句的SQL计划基线。

◆控制现有SQL计划基线的演变。

◆管理SQL计划管理基线(SMB)的内容,包括如何清除过时的或不希望有的SQL计划基线。

SPM情景#3:依靠前面的优化器版本使用SQL性能分析器(SPA)

在前面文章中的第一个情景讲述了如何使用SPM为SQL语句捕获SQL计划基线,该SQL语句的性能在实施Oracle10g升级到Oracle11g的过程中可能倒退。那个情景实际上涉及到在一个现有的Oracle10g数据库中执行该SQL语句组成的SQL工作负载。解决这个问题的一个可选的方法是在一个现有的Oracle11g数据库环境中通过控制初始化参数OPTIMIZER_FEATURES_ENABLE的值模拟一个Oracle10g环境。

模拟准备

要说明这个情景,我将利用前面文章中SPM情景#2中SQL调整集STS_SPM_200中捕获的相同的SQL语句,在我执行任何新的分析之前,我将从SQL管理库(SMB)中移除早先创建的所有SQL计划基线,我将使用函数DBMS_SPM.drop_SQL_PLAN_BASELINE移除那些标记有注释字符串“SPM_2”的语句(查看列表3.1),然后,我会准备一个新的名叫SPA_SPM_300的SQL性能分析器(SPA)任务,它将分析STS_SPM_200 SQL调整集中的SQL工作负载的性能(查看列表3.2)。

分析SQL工作负载

1 2 3 4 5 6  下一页

Tags:Oracle 数据库 SQL

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接