Oracle 执行语句历史查询—测试和实施人员必备技能

php中文网
发布: 2016-06-07 17:11:06
原创
1199人浏览过

还是找点事情做吧。这个项目做下来,我发现现场的测试人员普遍都不会前台抓SQL(就是指点击一下前台界面的操作,然后去数据库追查

     还是找点事情做吧。这个项目做下来,我发现现场的测试人员普遍都不会前台抓SQL(就是指点击一下前台界面的操作,然后去数据库追查刚刚这个动作 操作了哪些表)。后来和做测试的几个其它朋友聊天,也基本不知道这几个视图,感觉很诧异,这个应该是每一个测试人员,以及实施人员(没参与项目数据库开发,不熟悉每个业务具体操作那些表)常用的技能。因此决定总结下,把这小技巧给大家推荐下。

     其实很简单,就两个Oracle 自带的视图:v$sql_bind_capture 和 v$sql.

1、先点击下系统前台操作,然后去数据库查询

select distinct sql_text, sql_id, address

  from v$sql

 where module = 'JDBC Thin Client'      --数据库的链接方式

   and last_active_time>sysdate-0.0005 --很短的一个时间,不然太多不好区分

   and parsing_schema_name like 'INVENTORY%'; --数据库用户名

2、 通个这个查询我们可以知道,刚刚数据库进行操作的SQL(如果语句很长就得看SQL_FULLTEXT这个字段),如果你还想看详细参数,就得继续了。

select t.NAME, t.VALUE_STRING, t.* 

  from gv$sql_bind_capture t

 where t.address = '0700000916BF5110';

Value_string就是你传进去执行的变量值。很不幸的告诉你时间这样显示不了,但我们有办法啊,,继续下面的查询。

select t.value_string,

       t.NAME,

       t.datatype_string,

       DUMP(t.value_anydata),

       ANYDATA.accesstimestamp(t.value_anydata)

  from gv$sql_bind_capture t

 where address = '000000015E3964A8';

具体我就不解释了。

    

       关于v$sql_bind_capture视图大家得注意下,由于数据库参数配置的不同,这个保存绑定变量的值刷新时间是不同的,隐含参数  _cursor_bind_capture_interval,这个就是控制绑定变量抓取频率的参数,默认值是900(15min)。修改参数值很小,可以快速获取绑定变量的值: alter system set "_cursor_bind_capture_interval"=5 scope=both; 不过这个得根据你数据库的具体情况来设置了。如果你抓取到的参数老是没变化,你就要注意下这个抓取刷新的频率是多高了。

select * from v$parameter t where t.name like '%bind%';

      还有一点也需要注意,如果你的数据库是RAC多点集群的话,v$sql_bind_capture这个表的数据并没有存到共享存储区,它是在被你链接的单点数据库上面,所以有时候你可能查不到,这时就得单点登录一个个单点数据库去试运气了。

     当你刚刚接触别人的二手代码,或作为一个测试人员、实施人员、数据割接人员,不知道每个业务具体操作的是哪些表时,这两视图这样查询是不是很爽。哈哈

linux

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号