我有一个400行的sql查询,它在30秒内引发异常
ORA-03113: end-of-file on communication channel
以下是注意事项:
令人不安的情况是这样的:
AND UPPER (someMultiJoin.someColumn) LIKE UPPER ('%90936%')
因此,我的假设是,该查询显然已从服务器端终止,因为它被标识为资源浪费。
我的假设合适吗?我应该如何解决这个问题?
编辑:我试图获取错误查询的解释计划,但解释计划查询也给我一个ORA-03113错误。我了解我的查询的性能不是很高,但是为什么这应该成为ORA-03113错误的原因。我正在尝试从toad运行查询,并且没有生成警报日志或跟踪,我的数据库版本是
Oracle9i Enterprise Edition版本9.2.0.7.0-生产
最佳答案
导致此错误的一个可能原因是服务器端的线程崩溃。检查Oracle服务器是否已生成任何跟踪文件,或在其警报日志中记录了任何错误。
您说从查询中删除一个条件会导致问题消失。在没有该条件的情况下,查询要花多长时间?您是否检查了两个版本的查询的执行计划,以查看添加该条件是否导致选择了一些效率低下的计划?
关于oracle - 执行SQL查询时出现ORA-03113,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3350577/