Oracle如何重启mmon/mmnl进程(AWR自动采集)
环境: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自动收集相关。
Oracle如何重启mmon/mmnl进程(AWR自动采集)的更多相关文章
- 诊断:AWR快照停止自动采集
11.2.0.4数据库中,MMON进程,有时候由于一些莫名其妙的原因挂掉,接下来AWR的快照也就无法正常自动生成.MMON进程应该自动重启,却并没有自动被启动. 那么我们有可能是遇到了bug Bug ...
- [转帖]万字详解Oracle架构、原理、进程,学会世间再无复杂架构
万字详解Oracle架构.原理.进程,学会世间再无复杂架构 http://www.itpub.net/2019/04/24/1694/ 里面的图特别好 数据和云 2019-04-24 09:11:59 ...
- 行云管家 V4.7产品新特性-国际化版本、支持Oracle的数据库审计、主机密码自动修改策略 发布日期:2018-11-22
行云管家在线体验: 行云管家[官网]-领先的云计算管理平台-云安全,堡垒机,自动化运维 行云管家新手有礼活动: 行云管家新手有礼,新用户1元即可体验专业版-优惠券 发布日期:2018-11-22 ...
- oracle centos 重启后报错ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
oracle centos 重启后报错ORA-12514, TNS:listener does not currently know of service requested in connect d ...
- django搭建一个小型的服务器运维网站-重启服务器的进程
目录 项目介绍和源码: 拿来即用的bootstrap模板: 服务器SSH服务配置与python中paramiko的使用: 用户登陆与session; 最简单的实践之修改服务器时间: 查看和修改服务器配 ...
- Elastic Stack(ElasticSearch 、 Kibana 和 Logstash) 实现日志的自动采集、搜索和分析
Elastic Stack 包括 Elasticsearch.Kibana.Beats 和 Logstash(也称为 ELK Stack).能够安全可靠地获取任何来源.任何格式的数据,然后实时地对数据 ...
- ARM-LINUX自动采集温湿度传感器数据
开机root自动登录 如果想在超级终端输入回车,登录后执行,则可以在/etc/profile中加入命令: 如果实现开机自动登录,在/etc/inittab中修改,每个开发板修改的方式可能都不同. ht ...
- 在linux上一行代码不用写实现自动采集+hadoop分词
在linux上一行代码不用写实现自动采集+hadoop分词 将下面的shell脚本保存成到xxx.sh,然后执行即可 cd /opt/hadoop mkdir spider wget -O spide ...
- Memcached进程挂掉自动重启脚本
vim memcached_check.sh #!/bin/sh #check memcached process and restart if down PATH=$PATH:/opt/env/ ...
随机推荐
- [No0000108]Git1/9-Git简介与入门
Git是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一). Git有什么特点?简单来说就是:高端大气上档次! 那什么是版本控制系统? 如果你用Microsoft Word写过长篇大论, ...
- [No0000C5]VS2010删除空行
VS2010删除空行,查找内容:^:b*$\n,替换为:,查找范围:当前文档,使用:正则表达式
- typeof(), __typeof(), __typeof__(), -isKindOfClass:的区别
关于 typeof()和 __typeof() 和 __typeof__() ,Stack Overflow 有一段解释,大概意思是, __typeof() .__typeof__() 是C语言的 ...
- mysql 正确清理binlog 删除数据后磁盘空间的
(3条消息)MySQL删除数据后磁盘空间的释放情况 - ZERO - CSDN博客 https://blog.csdn.net/zero__007/article/details/51404091 m ...
- 2018/04/25 PHP7的编译安装
为什么要编译安装? 因为最近要学习 swoole ,想使用目前最新的 PHP7.2.4 ,但是我所在的 Ubuntu-16.04 的 apt 下只有 PHP7.0 的版本. 加上自己也想学习一下源码的 ...
- HD200703
#include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #inc ...
- vivado SDK之找不到"platform.h"
解决方法:建工程的时候不要选择empty application,而是选择hello world,里面会自动包含platform.c,platform.h等. 另外,常用的xgpio.h头文件有时候 ...
- 查看进程:ps
ps 是process status的缩写.用来查看进程 [root@linux-node- sss]# ps -aux USER PID %CPU %MEM VSZ RSS TTY STAT STA ...
- Laravel创建产品-CRUD之Create and Store
上一篇说了laravel用crud之index列出产品items,我们现在试着添加产品,用到CRUD的 Create 和 Store 方法,打开/app/Http/Controllers/ItemCo ...
- 用A标签实现页面内容定位 点击链接跳到具体位置
经常在维基百科等网站看到目录列表,点击链接会跳到具体的位置,小美眉一直在问是怎么做到的,其实挺简单的,用A标签实现页面内容定位就行了.实例参考微信营销理论手册的目录. 首先用A标签定义目录的链接. & ...