Tag Archives: shared_pool

将指定SQL的执行计划从共享池删除

如果Oracle的优化器产生了某种错误的执行计划,或者我们希望Oracle对于某个SQL重新进行分析,那么就需要这个SQL的执行计划在共享池中过期,而简单的方法在10.2.0.4以后才出现。 对于以前的版本而言,最显而易见的方法莫过于直接刷新共享池,但是如果是数据库中绝大部分的SQL都存在问题,那么这种方法无可厚非,也可能是见效最快的方法,而如果数据库中仅仅是个别的SQL存在问题,那么这种方法就过于暴力了。 SQL> SELECT COUNT(*) FROM dual; COUNT(*) ———- 1 SQL> SELECT sql_id, address, hash_value, executions, loads, parse_calls, invalidations 2 FROM v$sqlarea 3 WHERE sql_text = ‘select count(*) from dual’; SQL_ID ADDRESS HASH_VALUE EXECUTIONS LOADS PARSE_CALLS INVALIDATIONS ————- —————- ———- … Continue reading

Posted in ORACLE | Tagged , , , , , | 2 Comments

ORA-600(5351)错误

在告警日志中发现了ORA-600(5351)错误,同时出现大量的There are 3 memory allocation errors for object-level stat错误。 详细的错误信息为: Tue Jun 22 12:00:09 2010 Thread 1 advanced TO log SEQUENCE 1522 CURRENT log# 3 seq# 1522 mem# 0: /dev/rredo03 There are 6 memory allocation errors FOR object-level stat IN … Continue reading

Posted in BUG | Tagged , , , , , | Leave a comment