[转帖]Oracle如何重启mmon/mmnl进程(AWR自动采集)

oracle,如何,重启,mmon,mmnl,进程,awr,自动,采集 · 浏览次数 : 0

小编点评

重启mmon进程的方法: 1. **停止mmon进程:** ```sql ALTER SYSTEM ENABLE RESTRICTED SESSION; ``` 2. **禁用restricted模式:** ```sql ALTER SYSTEM DISABLE RESTRICTED SESSION; ``` 3. **重启数据库:** ```sql START UP DATABASE; ``` 4. **启用restricted模式:** ```sql ALTER SYSTEM ENABLE RESTRICTED SESSION; ```

正文

https://www.cnblogs.com/jyzhao/p/10119854.html

学习一下

 

环境:Oracle 11.2.0.4 RAC
现象:sysaux空间满导致无法正常生成快照,清理空间后,手工生成快照可以成功,但是观察自动生成快照依然是不成功。
之前了解到awr对应的相关后台进程是mmon,那么如何重启这个mmon进程呢?
起初我误以为是这种非核心进程是kill掉会自动启动,实际在实验环境中测试发现杀掉mmon进程并不会再自动起来。
那想启动mmon进程难道要重启数据库吗?当然,重启数据库自然是可以实现重启mmon的目的,但是这对于绝大多数的生产环境来说,如果为这样的需求去申请重启数据库都是几乎不可接受的。
下面我在实验环境做一个实际的演示:

当前节点mmon进程的信息如下:

[oracle@db01 ~]$ ps -ef|grep _mmon|grep -v grep
grid      5471     1  0 Dec13 ?        00:00:07 asm_mmon_+ASM1
oracle    7476     1  0 12:09 ?        00:00:05 ora_mmon_orcl1

正确重新启动mmon的方法是在业务闲时启用restricted模式,再立马禁用:

alter system enable restricted session;
alter system disable restricted session;   

为了尽可能的减少设置restricted模式带来的影响,所以建议最好两个语句一起复制执行。
Tips:启用restricted模式后,应用新连接数据库的会话将直接报错ORA-12526无法连接,直到禁用restricted模式后才可以恢复,具体现象如下:

[oracle@rac1-server ~]$ sqlplus jingyu/jingyu@192.168.1.107/orcl

SQL*Plus: Release 10.2.0.5.0 - Production on Fri Dec 14 15:33:58 2018

Copyright (c) 1982, 2010, Oracle.  All Rights Reserved.

ERROR:
ORA-12526: TNS:listener: all appropriate instances are in restricted mode

再去观察mmon进程已经正常重启:

[oracle@db01 ~]$ ps -ef|grep _mmon|grep -v grep
grid      5471     1  0 Dec13 ?        00:00:07 asm_mmon_+ASM1
oracle   15298     1  0 15:33 ?        00:00:00 ora_mmon_orcl1

可以看到,ora_mmon_orcl1进程的启动时间由12:09变为15:33,说明是已经成功重启了。再去观察自动生成快照已经正常。
补充说明:
后续了解到,其实除了mmon进程外,还有一个mmnl进程也是随着一起重启的。
关于这两个进程和awr的具体关系描述,可以参考eygle的文章,引用如下:

在Oracle10g中,有两个后台进程是新增的,这里我想说的是MMON和MMNL。

在Oracle不同的文档中,对这两个进程的解释存在歧义。
MMON 应该是 Memory Monitor 的缩写,但是在有的文档中被记录为Manageability Monitor ,这应当是10g早期版本中的称呼,只不过后来发生了变更。
这个进程的主要作用如下:
The memory monitor (MMON) process was introduced in 10g and is associated with the Automatic Workload Repository new features used for automatic problem detection and self-tuning. MMON writes out the required statistics for AWR on a scheduled basis.
另外一个进程是 MMNL ,是 Memory Monitor Light (MMNL) 的缩写,在部分文档中记录为 Manageability Monitor Light .
这个进程的作用如下:
The Memory Monitor Light (MMNL) process is a new process in 10g which works with the Automatic Workload Repository new features (AWR) to write out full statistics buffers to disk as needed.

可以看到,mmon和mmnl这两个后台进程在Oracle 10g就已经随着AWR一起引入,作用都与awr自动收集相关。

AlfredZhao©版权所有「从Oracle起航,领略精彩的IT技术。」

与[转帖]Oracle如何重启mmon/mmnl进程(AWR自动采集)相似的内容:

[转帖]Oracle如何重启mmon/mmnl进程(AWR自动采集)

https://www.cnblogs.com/jyzhao/p/10119854.html 学习一下 环境:Oracle 11.2.0.4 RAC现象:sysaux空间满导致无法正常生成快照,清理空间后,手工生成快照可以成功,但是观察自动生成快照依然是不成功。之前了解到awr对应的相关后台进程是m

[转帖]Oracle打开审计

0、审计安装11g默认是开始审计的,有审计记录,所以不需要安装,如果查询发现表不存在,则需要安装。使用此命令安装即可,安装完成后重启数据库。SQL> @/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/cataudit.sql;1、开启审计SQL> al

[转帖]oracle清理临时表空间

https://blog.51cto.com/u_11310506/2357625 为了防止临时表空间无限制的增加,我采用隔一段时间就重建临时表空间的方法,为了方便,我保留两组语句,轮流执行即可, 假定现在临时表空间名称是temp,新建一个tempa表空间,删除temp表空间,方法如下: alter

[转帖]oracle如何删除datafile,误删除Oracle datafile 无法打开数据库

1、在Oracle open方式下,直接从OS上删除了datafile文件。 rm /u02/rmants.dbf 2、数据库关闭后,无法打开数据库,只能到mount状态。 SQL> alter database open; alter database open * ERROR at line 1

[转帖]Oracle、MySQL、PG是如何处理数据库“半页写”的问题的?

数据库“断页”是个很有意思的话题,目前任何数据库应该都绕不过去。我们知道数据库的块大小一般是8k、16k、32k,而操作系统块大小是4k,那么在数据库刷内存中的数据页到磁盘上的时候,就有可能中途遭遇类似操作系统异常断电而导致数据页部分写的情况,进而造成数据块损坏,数据块损坏对于某些数据库是致命的,可

[转帖]如何判断oracle内存是否够用

https://www.modb.pro/db/431194 给数据库分配的内存,在topas当中看,是属于计算内存,从内存栈分类上来说是共享内存。如果给数据库分配XX GB内存,那么数据库使用的内存不含超过这个限制。但至于这些内存够不够用,就要看业务系统是否能够接受当前的响应时间等性能指标,能接受

[转帖]Oracle 创建和查看DBLink 的方法

https://www.cnblogs.com/zhouzangood/articles/4612441.html 1、如果需要创建全局 DBLink,则需要先确定用户有创建 dblink 的权限: select * from user_sys_privs where privilege like

[转帖]Oracle数据库的两种授权收费方式详解

https://www.jb51.net/article/265823.htm 现在Oracle有两种授权收费方式,按CPU(Process)数和按用户数(Named User Plus),前一种方式一般用于用户数不确定或者用户数量很大的情况,典型的如互联网环境,这篇文章主要介绍了Oracle数据库

[转帖]Oracle 用户密码中包括了“@”字符串的错误提示解决方法

Oracle 用户密码设置了带有“@”符号,正常登陆总是无法登陆,提示无法解析的连接字符串错误 解决办法:1:修改密码:修改密码使密码中不包括@符号;2:增加转义即可,在密码前后增加 \"示例如下: CMD中输入:C:\Users\Administrator> exp system/\"ABC@X1

[转帖]oracle OSWatcher安装部署

Oswatch是oracle官方提供,用于收集操作系统性能的小工具,oswatch的安装与使用也比较简单,直接解压就可以使用。oswatch是通过调用系统的命令完成信息的收集,如:ps ,top ,mpstat ,iostat,netstat ,traceroute vmstat 。支持的操作系统包