可能重复:
Oracle: is there a tool to trace queries, like Profiler for sql server?
我正在使用JDBC与Oracle交谈。是否有任何方法或外部工具可以跟踪在一个会话期间从app服务器提交到Oracle DB服务器的所有SQL查询?这应该是非常好的调试/错误跟踪工具。
答案 0 :(得分:6)
您可以使用JDBC (Enabling and Using JDBC Logging)日志记录功能。
答案 1 :(得分:4)
您可以尝试JProfiler。它的JDBC探针向您显示事件视图中的所有SQL语句:
适用于所有JDBC驱动程序,包括Oracle。此外,探针的热点视图对于确定哪些查询占用大部分时间非常有用。
免责声明:我公司开发JProfiler
答案 2 :(得分:1)
答案 3 :(得分:1)
您可以检查V $ SQLAREA视图以查看连接发送到服务器的所有内容:
select sql_fulltext,
executions,
buffer_gets,
rows_processed,
elapsed_time,
first_load_time,
last_active_time
from v$sqlarea
where parsing_schema_name = 'YOUR_DB_USERNAME'
该视图还包含有关执行stament的频率以及可能有助于跟踪性能问题的其他有趣信息的信息。
请注意,该信息基本上是一个缓存 - 因此,在非常繁忙的系统中,可能会从全局区域清除语句(这意味着您可能没有真正看到所有语句)