我们正在寻找一种可以在运行时分析SQL查询的工具。 我想捕获在运行时期间在Web应用程序中调用函数期间执行的所有查询。如果你可以帮助我,那就太棒了。
此致
答案 0 :(得分:2)
“我想捕获调用期间执行的所有查询 功能......“
这很简单:10046事件会将会话执行的所有SQL写入跟踪文件,该文件可以使用标准tkprof实用程序或其他工具(如Trace Analyzer)进行挖掘(如果您有Oracle)支持合同)。蒂姆·霍尔写了一篇很好的介绍:Read it here。
“...在运行时的Web应用程序中。”
这更难。 “Web应用程序”通常表示连接池,这使得难以确定哪个数据库会话链接到哪个前端活动。但是,Oracle的更高版本可以使用DBMS_MONITOR等工具提供帮助。 Find out more。
答案 1 :(得分:1)
不确定任何工具,但select * from v$sql;
可以提供大量信息。
它将显示正在运行的SQL查询,运行查询的应用程序类型,否。处理的行数,优化器成本,用户i / o等待时间,应用程序等待时间,缓冲获取,并发等待时间,直接写入,磁盘读取等等(以及一大堆其他信息)