ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 9i 升级到 10g SQL执行计划校验

9i 升级到 10g SQL执行计划校验

原创 Linux操作系统 作者:westzq1984 时间:2009-07-07 13:35:04 0 删除 编辑

SQL Performance Analyzer 能完成版本升级前的执行计划改变的检查工作
但是该功能是11g提供的,如果要从9i升级到10g,那么还需要使用或者购买11g版本的数据库

研究了下SPA的实现,其是通过9i的10046的跟踪文件在10g数据库上重演SQL执行计划实现的
那可以考虑用TKPROF把9i的10046文件到10g库上重新执行下explain

考虑现在多数环境是BS架构的,数据库连接数不好控制,生成的跟踪文件也很多,需要将这些文件合并起来,以进行合理的分析
这里可以使用10g的trcsess命令实现

主要步骤
1.在9i库上启动10046跟踪,获得trace文件
2.对于每个trace文件,在
 *** SESSION ID:(15.8) 2009-07-07 13:11:45.556
 这样的行后添加
 *** CLIENT ID:(zhangqiaoc_test) 2009-06-21 14:27:23.214
3.对于每个trace文件,在末尾添加
 *** CLIENT ID:() 2009-06-21 14:27:23.259
4.在10g的环境下,使用trcsess合并这些文件
 trcsess clientid='zhangqiaoc_test' * >test.trc
5.对test.trc执行9i的tkprof
 tkprof test.trc test.txt
6.对test.trc执行10g的tkprof
 tkprof explain=ctais2/oracle test.trc test.txt

这样就可以获得9i 10g分别的tkprof文件,在用Beyond Compare这样的工具,显示差异部分以及上下文,就可以轻易的发现执行计划有改变的SQL了

 

 

 

 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8242091/viewspace-608509/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: oracle10g 静默安装
请登录后发表评论 登录
全部评论

注册时间:2009-04-06

  • 博文量
    251
  • 访问量
    1042166