环境: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自动采集)的更多相关文章

  1. 诊断:AWR快照停止自动采集

    11.2.0.4数据库中,MMON进程,有时候由于一些莫名其妙的原因挂掉,接下来AWR的快照也就无法正常自动生成.MMON进程应该自动重启,却并没有自动被启动. 那么我们有可能是遇到了bug Bug ...

  2. [转帖]万字详解Oracle架构、原理、进程,学会世间再无复杂架构

    万字详解Oracle架构.原理.进程,学会世间再无复杂架构 http://www.itpub.net/2019/04/24/1694/ 里面的图特别好 数据和云 2019-04-24 09:11:59 ...

  3. 行云管家 V4.7产品新特性-国际化版本、支持Oracle的数据库审计、主机密码自动修改策略 发布日期:2018-11-22

    行云管家在线体验: 行云管家[官网]-领先的云计算管理平台-云安全,堡垒机,自动化运维​ 行云管家新手有礼活动: 行云管家新手有礼,新用户1元即可体验专业版-优惠券​ 发布日期:2018-11-22 ...

  4. 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 ...

  5. django搭建一个小型的服务器运维网站-重启服务器的进程

    目录 项目介绍和源码: 拿来即用的bootstrap模板: 服务器SSH服务配置与python中paramiko的使用: 用户登陆与session; 最简单的实践之修改服务器时间: 查看和修改服务器配 ...

  6. Elastic Stack(ElasticSearch 、 Kibana 和 Logstash) 实现日志的自动采集、搜索和分析

    Elastic Stack 包括 Elasticsearch.Kibana.Beats 和 Logstash(也称为 ELK Stack).能够安全可靠地获取任何来源.任何格式的数据,然后实时地对数据 ...

  7. ARM-LINUX自动采集温湿度传感器数据

    开机root自动登录 如果想在超级终端输入回车,登录后执行,则可以在/etc/profile中加入命令: 如果实现开机自动登录,在/etc/inittab中修改,每个开发板修改的方式可能都不同. ht ...

  8. 在linux上一行代码不用写实现自动采集+hadoop分词

    在linux上一行代码不用写实现自动采集+hadoop分词 将下面的shell脚本保存成到xxx.sh,然后执行即可 cd /opt/hadoop mkdir spider wget -O spide ...

  9. Memcached进程挂掉自动重启脚本

    vim memcached_check.sh   #!/bin/sh #check memcached process and restart if down PATH=$PATH:/opt/env/ ...

随机推荐

  1. 动态环境下的slam问题如何解决?

    作者:颜沁睿链接:https://www.zhihu.com/question/47817909/answer/107775045来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...

  2. 2014年蓝桥杯省赛A组c++第1题(暴力求解)

    /* 小明带两个妹妹参加元宵灯会.别人问她们多大了,她们调皮地说:“我们俩的年龄之积是年龄之和的6倍”. 小明又补充说:“她们可不是双胞胎,年龄差肯定也不超过8岁啊.” 请你写出:小明的较小的妹妹的年 ...

  3. [knowledge] 停止等待协议

    再读TCP/IP详解 说到流量控制, 可能便涉及了两方面 1. 停止等待协议. https://baike.baidu.com/item/%E5%81%9C%E6%AD%A2%E7%AD%89%E5% ...

  4. [daily][mirror][daemonlogger][tc] 我想把一个网卡(port A)的流量,镜像到虚拟机的一个网卡(port VA)上去

    iptables tee 模块 https://blog.gnuers.org/?p=740 http://blog.csdn.net/wesleyflagon/article/details/385 ...

  5. teamviewer 卸载干净

    1 点击开始菜单,控制面板,卸载程序,找到软直接卸载2 按住Ctrl+R,输入%AppData%,删除teamview 相关文件夹3 输入regedit打开注册表HKEY_LOCAL_MACHINE\ ...

  6. byte数组存储到mysql

    public int AddVeinMessage(byte[] data)//插入数据库 { using (BCSSqlConnection = new MySqlConnection(strCon ...

  7. ubuntu14.04下开启ssh服务

    1. 安装 sudo apt-get update sudo apt-get install openssh-server 2.开启服务 查看查看ssh服务是否启动 打开"终端窗口" ...

  8. mint-ui是什么?怎么使用?说出至少三个组件使用方法?

    mint-ui是基于vue的前端组件库.npm安装,然后import样式和js,vue.use(mintUi)全局引入.在单个组件局部引入:import { Toast } from 'mint-ui ...

  9. kvc原理

    KVC底层实现原理 第一步:寻找该属性有没有setsetter方法?有,就直接赋值 第二步:寻找有没有该属性带下划线的成员属性?有,就直接赋值 第三步:寻找有没有该属性的成员属性?有,就直接赋值 1. ...

  10. Docker镜像推送(push)到Docker Hub

    镜像构建成功后,只要有docker环境就可以使用,但必须将镜像推送到Docker Hub上去.我们之前创建的镜像不符合Docker Hub的tag要求,因为 在Docker Hub注册的用户名是boo ...