Oracle数据库SMON引起数据库经常宕机一例:ORA-00600:[15709], [29], [1]

教程发布:风哥 教程分类:ITPUX技术网 更新日期:2022-02-12 浏览学习:1866

Oracle数据库SMON引起数据库经常宕机一例:ORA-00600:[15709], [29], [1]

最近帮朋友查看一个数据库问题,数据库经常宕机,检查最近的日志,发现宕机时报以下报错:
Sun Apr 1 19:51:16 2012
Fatal internal error happened while SMON was doing active transaction
recovery.
Sun Apr 1 19:51:16 2012
Errors in file /data1/ora9i/admin/ora9i/bdump/ora9i_smon_16739.trc:
ORA-00600: internal error code, arguments: [15709], [29], [1], [], [], [],[], []
ORA-12801: error signaled in parallel query server P002
ORA-30317: Internal
SMON: terminating instance due to error 600
Instance terminated by SMON, pid = 16739
Mon Apr 2 16:12:49 2012
Starting ORACLE instance (normal)
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
SCN scheme 3
Using log_archive_dest parameter default value
LICENSE_MAX_USERS = 0

查看trc文件:
Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production
System name: Linux
Machine: x86_64
Unix process pid: 16739, image: ******(SMON)
PROCESS 6:
----------------------------------------
SO: 0xcc3e5a48, type: 2, owner: (nil), flag: INIT/-/-/0x00
(process) Oracle pid=6, calls cur/top: 0xcb492d90/0xcb492d90, flag: (16) SYSTEM
int error: 0, call error: 0, sess error: 0, txn error 0
(post info) last post received: 0 0 30
last post received-location: ksrpublish
last process to post me: cc3edb48 32 0
last post sent: 2147494036 136 6
last post sent-location: ksusig
last process posted by me: cc3e9568 1 0
(latch info) wait_event=0 bits=0
Process Group: DEFAULT, pseudo proc: 0xcb3d4db8
O/S info: user: ora9i, term: UNKNOWN, ospid: 16739
OSD pid info: Unix process pid: 16739, image: ********(SMON)
省略了...
经分析检查,此问题由SMON may fail导致了instance Crashing ,是一个Unpublished Bug 6954722 ,在9.2.0.8 and 10.2.0.4的版本上都有,这个bug修复在:10.2.0.4.2, 10.2.0.5, 11.1.0.7 and 11.2.0.1,
详见文档:SMON may fail with ORA-00600 [15709] Errors Crashing the Instance [ID 736348.1]
SolutionSymptoms1. The following errors are reported in the alert.log:

ORA-00600: internal error code, arguments: [15709], [29], [1], [], [], [], [], []
ORA-30319: Message 30319 not found; product=RDBMS; facility=ORA
SMON: terminating instance due to error 4743. The call stack will resemble:

2. The call stack looks similar too:

kxfpqsrls <- kxfpqrsod <- kxfpdelqrefs <- kxfpqsod_qc_sod <- kxfpqsod <- ktprdestroy <- ktprbe <- ktmmon CauseThis is due to unpublished RAC specific Bug 6954722 which is known to affect RDBMS version 9.2.0.8 and 10.2.0.4. Unpublished Bug: 6954722 is fixed in 10.2.0.4.2, 10.2.0.5, 11.1.0.7 and 11.2.0.1. If hitting similar symptoms in later RDBMS versions with Patch:6954722 applied, you are likely hitting Bug: 9233544, affecting 10.2.0.4, 11.1.0.7 and 11.2.0.1. Bug: 9233544 is fixed in 11.2.0.3 and 12.1. SolutionTo implement solution for unpublished Bug: 6954722, please execute one of the following steps: 1. Use the following workaround Set fast_start_parallel_rollback=false and recovery_parallelism=0 OR 2. Apply one-off <>, if available for your platform/version here.
这个patch只适合于aix和solaris,不适合linux。
OR

3. Upgrade to fixed release 10.2.0.5, 11.1.0.7 or 11.2.0.1.

因此,针对这个问题,解决的方法有两个:
1、设置参数:
fast_start_parallel_rollback=false
recovery_parallelism=0
2、升级数据库从9.2.0.8 to 10.2.0.5,由于9.2.0.8早已过oracle服务期了,再加上这系统平时也不太稳定,所以还是建议他们直接升级。

本文标签:
网站声明:本文由风哥整理发布,转载请保留此段声明,本站所有内容将不对其使用后果做任何承诺,请读者谨慎使用!
【上一篇】
【下一篇】