【发布时间】:2015-04-29 13:05:34
【问题描述】:
我是甲骨文的新手,现在我对以下情况感到疯狂。我正在开发一个 oracle 11g 数据库,并且很多时候我使用 sql developer 运行查询,这在 5/6 秒内正确执行,而其他时间则相同的查询需要 300/400 秒才能执行。有一些工具可以调试查询使用 300/400 秒时发生的情况?
更新 1 这是我的 sql 开发者截图问题似乎是 direct path read temp
更新 2 report
更新 3 report2
有什么建议吗?
【问题讨论】:
-
你能运行这个并发布输出吗?
select dbms_sqltune.report_sql_monitor(sql_id => 'gvqwuz1u29s0f', type => 'text') from dual; -
只是一个猜测(顺便说一句,我看不到您的图像),如果有时您运行查询并且它比其他时间快得多,您可能会从缓存中提取块,并且执行速度较慢可能意味着块已经过时并且必须重新加载。只是一个猜测,但运行跟踪会告诉你更多发生了什么
-
@JonHeller 我用以下 sql 语句的报告更新了我的问题dbms_sqltune.report_sql_monitor(sql_id => 'SQL_ID', type => 'text') from dual;
-
@Skizzo 该文件在 4K 字节处被截断。您可以尝试再次导出它吗?
-
@JonHeller 我更新了我的问题