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

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

 2008-09-04 12:50:24 来源:WEB开发网   
核心提示: 图2.4.1 SQL语句SPM_2.1.3执行计划(一)图2.4.2 SQL语句SPM_2_1.3执行计划(二)概念证明为了证明潜在的SQL语句性能倒退减少了或完全消除了,现在我将简单地执行SPM_2_1.SQL中相同的五条SQL语句,Oracle数据库11g:SQL计划管理(二)(4),

图2.4.1 SQL语句SPM_2.1.3执行计划(一)

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

图2.4.2 SQL语句SPM_2_1.3执行计划(二)

概念证明

为了证明潜在的SQL语句性能倒退减少了或完全消除了,现在我将简单地执行SPM_2_1.SQL中相同的五条SQL语句,并检验CBO的确选择了预先载入的SQL计划基线而不是执行一个新的执行计划效率更低的解析。判断这个的最简单的方法是为这五条语句执行DBMS_XPLAN.DISPLAY_SQL_PLAN_BASELINE存储过程,当为FORMAT参数解析TYPICAL+NOTE的值时需要显示CBO已经选择的计划,如果CBO的确选择了一个现有的SQL计划基线作为它的执行计划,+NOTE指令指示存储过程显示一条记录。列表2.4显示了为SPM_2_1.sql中的五条语句执行这个存储过程的结果。

SPM情景#2:部署一个新应用程序

每当我部署一个新的应用程序到我的生产数据库时,我知道我实际上受应用程序开发人员和质量保证人员的摆布,即使我坚决主张严谨的数据库对象命名标准,严格坚持PL/SQL最佳实践,给不同绑定变量使用不同的值对SQL语句进行广泛地测试,我也知道这些指导意见往往不切实际。当我商店的应用程序开发团队和QA资源不能达成一致的标准时,或如果我的IT管理上司认为我们花费了太多时间进行测试,我知道这是一个新开发的内部应用程序对调整好的Oracle数据库施加严重的性能影响的好机会。

另一个可能引起数据库性能下降的因素是那些经过管理层批准强制部署的第三方应用程序,每个经验丰富的Oracle DBA有至少遇到过一次这种情况:一个外部应用程序正引起严重的性能问题,经过调查显示该应用程序的开发人员使用了“agnostic SQL”以满足在任何操作系统环境中的任何数据库上都能运行该应用程序,结果是,SQL代码不能直接调整,因为它是放置在应用程序中的。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Oracle 数据库 SQL

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