MMNL absent ,数据库无法连接

本文记录了一次处理Oracle数据库MMNL长时间未响应导致的问题,详细解释了MMNL的作用及此错误的原因,并给出了针对性的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

周六晚上 11 点,正在看奥运新闻,同事打电话说数据库大量 lock ,无法使用,查看日志,发现如下错误,用 SQLPLUS 无法进入数据库,只好重新启动 Service

MMNL absent for 1201 secs; Foregrounds taking over

 

首先我们从MMNL可以知道,这是一个Oracle10g的数据库。
MMNLOracle10g引入的一个新的后台进程,其全拼名字为Memory Monitor Light ,是AWR(Automatic Workload Repository )的组件之一。

这个错误的含义是,MMNL过长时间未激活,前台接替了它的工作。

通常这是一个可以忽略的错误,不会对数据库产生什么影响;但是在某些情况下,该错误会导致数据库无法登陆或访问,需要重新启动数据库才能解决。
这类错误只在10gR1中存在,在10gR2中已经修正。
你可能看到类似的信息还有:

Wed Nov 9 11:53:47 2005

ALTER SYSTEM SET fast_start_mttr_target=3600 SCOPE=MEMORY;

Wed Nov 9 11:54:03 2005

MTTR advisory is disabled because either FAST_START_IO_TARGET or

LOG_CHECKPOINT_INTERVAL is set

Wed Nov 9 11:54:07 2005

ALTER SYSTEM SET fast_start_mttr_target=1200 SCOPE=MEMORY;

Wed Nov 9 12:23:44 2005

KTSMG_UPDATE_MQL(): MMNL absent for 1201 secs; Foregrounds taking over

 

以上是在盖国强网站上查到的原文,Metalink上也有类似的文章。可是,我的库已经是R2版本,应该不会有类似问题。

 

Metalink上发现如下文章

 

Applies to:

Oracle Server - Enterprise Edition - Version: 10.2.0.1 to 10.2.0.3
This problem can occur on any platform.

Symptoms

Alert log shows the following messages :

Wed Oct 10 10:59:06 2007
MMNL absent for 293161 secs; Foregrounds taking over
Wed Oct 10 11:00:06 2007
MMNL absent for 293223 secs; Foregrounds taking over
Wed Oct 10 11:01:07 2007
MMNL absent for 293283 secs; Foregrounds taking over
Wed Oct 10 11:02:07 2007
MMNL absent for 293343 secs; Foregrounds taking over
Wed Oct 10 11:02:07 2007
MMNL absent for 293343 secs; Foregrounds taking over
MMNL absent for 293343 secs; Foregrounds taking over
MMNL absent for 293343 secs; Foregrounds taking over

Cause

The maxbytes of the datafiles was reduced lower than the bytes value.

FILE_NAME
--------------------------------------------------------------------------------
BYTES/1024/1024 TABLESPACE_NAME AUT MAXBYTES/1024/1024
--------------- ------------------------------ --- ------------------
/db/oradata/pcis/SYSSPACE001/system.dbf
700 SYSTEM YES .0078125

/db/oradata/pcis/UNDOTSPACE001/undotbs.dbf
5000 UNDOTBS YES .0078125

/db/oradata/pcis/SYSSPACE001/sysaux.dbf
500 SYSAUX YES .0078125

Maxbytes should not be allowed to be lower than bytes. This is infact a bug which has already been logged.
Bug 5470031 has been raised for this issue on how the maxsize is allowed to be smaller than the actual filesize using the command ALTER DATABASE DATAFILE ...AUTOEXTEND MAXSIZE

As of now, at the time of writing this note ( Oct'07 ) , this bug is still under development/resolution phase.

Solution

Either Turn off the autoextend option for the datafile or
Increase the Maxbytes to be greater than the bytes value.

References

Bug 5470031 - INCORRECT MAXSIZE ON UNDO DATAFILE LEADS TO "MMNL ABSENT FOR XX SECS; FOREGROUND

 

再查看我的库,发现 Undo Tablespace 的确是自动增长,取消自动增长选项,观察是否再次出现类似情况

转载于:https://www.cnblogs.com/kevinsun/archive/2008/08/11/1264886.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值