我正面临与自动sql调优顾问的ORA:7445问题。自动SQL调优顾问保持与是否有可能从自动sql调优顾问工作中跳过特定的SQL语句
ORA失败:7445
,而它试图调整特定SQL。
有什么办法可以从自动sql调整顾问工作中跳过这个sql语句吗?
我正面临与自动sql调优顾问的ORA:7445问题。自动SQL调优顾问保持与是否有可能从自动sql调优顾问工作中跳过特定的SQL语句
ORA失败:7445
,而它试图调整特定SQL。
有什么办法可以从自动sql调整顾问工作中跳过这个sql语句吗?
避免自动SQL Tuning Advisor的最简单方法可能是将查询转换为程序不支持的表单。
根据the "Automatic SQL Tuning" chapter of the "Database Performance Tuning Guide":
数据库忽略递归SQL和声明已调整 最近(上月),并行查询,DML,DDL和SQL 报表业绩方面的问题引起的并发问题。
如果查询select * from dba_objects
是造成问题,请尝试重新写这样的:
select * from dba_objects
union all
--This query block only exists to avoid the Automatic SQL Tuning Advisor.
select /*+ parallel(dba_objects 2) */ * from dba_objects
where 1=0;
它现在是一个“并行查询”,虽然它不会真正在,因为1=0
的并行运行。我没有测试过这个,我想你测试会很困难,因为你需要刷新现有的AWR数据以防止出现错误。
这是我通常禁用自动SQL调整顾问的原因之一。我喜欢它的想法,但实际上我从来没有看到调音顾问提供有用的信息。它为我做的所有事情都是生成警报。
在理论,包DBMS_AUTO_SQLTUNE包含参数BASIC_FILTER
,OBJECT_FILTER
,和PLAN_FILTER
。我认为其中的一个可能有用,但我认为它们还没有实施。我无法在Google或My Oracle Support上找到对它们的引用。当我输入数值的随机文本时,没有错误。
理想的情况下,我们会查找每一个ORA-00600和ORA-07445错误,创建一个SR,并解决潜在的问题。但谁有时间呢?当遇到数据库“bug”时,最好的解决方案通常是尽可能快地避免它。
它是一个oracle11gR2数据库。 – sasikumar
你最好在向MOS提交SR来解决7445问题。 – thatjeffsmith
您是否查看关于更多信息的警报日志?可能是oracle在那里写了更多的信息。 –