案例环境:
操作系统版本: Red Hat Enterprise Linux ES release 4
数据库版本 : 10.2.0.4.0 32 bit
案例介绍:
今天我执行stop_oracle.sh脚本关闭数据库时遭遇了ORA-00600: internal error code, arguments: [LibraryCacheNotEmptyOnClose], [], [], [], [], [], [], []. 其中stop_oracle.sh脚本内容如下
lsnrctl stop LISTENER
sleep 15
sqlplus /nolog <<EOF
conn / as sysdba;
alter system switch logfile;
alter system checkpoint;
shutdown immediate;
exit
EOF
具体细节如下所示:
./stop_oracle.sh
LSNRCTL for Linux: Version 10.2.0.4.0 - Production on 08-JUL-2014 23:52:13
Copyright (c) 1991, 2007, Oracle. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
The command completed successfully
SQL*Plus: Release 10.2.0.4.0 - Production on Tue Jul 8 23:52:32 2014
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
SQL> Connected.
SQL>
System altered.
SQL>
System altered.
SQL> Database closed.
Database dismounted.
ORA-00600: internal error code, arguments: [LibraryCacheNotEmptyOnClose], [], [], [], [], [], [], []
SQL> Disconnected from Oracle Database 10g Release 10.2.0.4.0 - Production
搜索了一下metalink,发现这个是ORACLE 10g/ 11g特别版本中的一个bug来的,原因是当数据库关闭后,仍然有对象在库缓存中。 这并不表示系统中有任何损坏或有问题。可以忽略或打补丁升级。这个bug在10.2.0.5, 11.2.0.1中被修复了。
This may be due to unpublished Bug 4483084 - ORA-600 [LIBRARYCACHENOTEMPTYONCLOSE]
This is a bug in that an ORA-600 error is reported during shutdown, after database close because there are still objects in the library cache.
It does not indicate any damage or a problem in the system.
There is a separate issue,
Bug 7572335 - ORA-600 [LIBRARYCACHENOTEMPTYONCLOSE] / ORA-600 [730] DURING SHUTDOWN
which can occur if child cursors are still marked 'KEPT' in the library cache at shutdown.
If you are not sure which issue you are encountering, please submit your traces to Global Software Support.
Bug 4483084 is fixed in 11.1.0.6.
Please refer to
Note 4483084.8 - Bug 4483084 - ORA-600 [LibraryCacheNotEmptyOnClose] on shutdown
Due to the nature of the fix, it is not possible to backport to earlier releases.
Bug 7572335 is fixed in 11.2 and 10.2.0.5 but there are also interim patches available on top of 10.2.0.4 and 11.1.0.7.
Please refer to
Note 7572335.8 - Bug 7572335 - ORA-600 [LibraryCacheNotEmptyOnClose] during shutdown
The error can be safely ignored as it does not indicate a problem with the database.
If the database appears hung on the shutdown, or to avoid the error, use the following shutdown commands:
shutdown abort
startup restrict
shutdown immediate
To addres Bug 7572335, you can also apply interim Patch 7572335 if available for your platform and Oracle version.
To check for conflicting patches, please use the MOS Patch Planner Tool
Please refer to
Note 1317012.1 - How To Use MOS Patch Planner To Check And Request The Conflict Patches?
Bug 7572335 ORA-600 [LibraryCacheNotEmptyOnClose] during shutdown
This note gives a brief overview of bug 7572335. The content was last updated on: 14-AUG-2012
Click here for details of each of the sections below.
Affects:
Product (Component) |
Oracle Server (Rdbms) |
Range of versions believed to be affected |
Versions BELOW 11.2 |
Versions confirmed as being affected |
|
Platforms affected |
Generic (all / most platforms affected) |
Fixed:
Description
ORA-600 [LibraryCacheNotEmptyOnClose] / ORA_600 [730] error may occur if cursors are marked kept in the shared pool.
Rediscovery Notes:
Check a library_cache dump to see if objects are marked as kept (KEP).
Please note: The above is a summary description only. Actual symptoms can vary. Matching to any symptoms here does not confirm that you are encountering this problem. For questions about this bug please consult Oracle Support. |
References
Bug:7572335 (This link will only work for PUBLISHED bugs)
Note:245840.1 Information on the sections in this article