假设队列管理器为QMgrName,以下所有使用QMgrName的地方您都可以替换成您维护的mq队列管理器名称。

一、MQ的启动与停止

用root用户启/停需要root用户包含在mqm组中。

1、MQ的启动

strmqm QMgrName

如果启动默认队列管理器,strmqm后可以忽略队列管理器名称。

在意外情况停止队列管理器后,启动可能会失败,此时可以检查上次停止后是否有IPC资源未释放,若有请予以删除,删除方法参考下面的“C.清理所有残留在系统内部的信号灯和共享内存”。

2、MQ的关闭

一般情况下,我们使用“endmqm  -i QMgrName”来停止mq,如果停止失败,可以使用如下步骤:

步骤1:endmqm  -p QMgrName,如果停不掉,继续步骤2;

步骤2:杀死有关进程,清理残留在系统内部的信号灯和共享内存

A.找到队列管理器程序进程

ps -ef|grep QMgrName

B.使用kill命令终止1>中找到的程序进程,无法停止的进程可以用kill -9来终止,终止进程的顺序如下(不存在的进程可以忽略):

kill amqpcsea  命令服务器
kill amqhasmx  记录器
kill amqharmx  日志格式化器(仅LINEAR日志)
kill amqzllp0  检查点处理器
kill amqzlaa0  队列管理器代理
kill amqzxma0  处理控制器
kill amqrrmfa  库进程(用于群集)
C.清理所有残留在系统内部的信号灯和共享内存(其属主和组均为mqm)
ipcs -s| grep mqm | awk '{print $2}'|xargs -i ipcrm -s {}
ipcs -m| grep mqm | awk '{print $2}'|xargs -i ipcrm -m {}

二、MQ运行状态查看与常用操作

1、查看队列管理器运行状态

对MQ 5.2或以上版本,执行如下命令检查队列管理器运行状态:dspmq
显示结果中QMNAME表示MQ队列管理器的名称,STATUS表示当前运行状态。
运行状态有如下几种:
Starting    正在启动
Running    正在运行
Ending    正在停止
Ended normally  已经正常终止
Ended immediately  已经立即终止
Ended preemtively  已经强制终止
Ended unexpectively 异常终止

注意:停止MQ后必须使用dspmq命令进行状态检查

dspmq查询结果示例:
QMNAME(QM00)    STATUS(Running)

2、查看通道运行状态与启停通道

runmqsc

dis chl(*);     查看所有通道定义

dis chs(*);     查看所有通道状态,如果没有查询到通道状态,或报错AMQ8420: Channel Status not found,请启动通道

dis chs(ChannelName); 查看通道ChannelName的状态

通道状态有如下几种:

STARTING  正在启动
BINDING    正在绑定
INITIALIZING  正在初始化
RUNNING   正常
STOPPING 正在停止
RETRYING  重试
PAUSED  等待
STOPPED 已停止
REQUESTING  请求

start chl(ChannelName);  启动通道

stop chl(ChannelName);  停止通道

reset channel(ChannelName);  重置通道序号。当本地与其他MQ队列管理器的通道无法正常启动的情况,检查日志发现是通道序号不一致,此时就需要先停止发送方通道,并在发送方和接收方进行通道计数的重置,重置后启动通道即可恢复通讯。

3、查看通道监听状态与启停监听

runmqsc

dis listner(*);     查看通道监听定义

dis lsstatu(listnerName);   查看监听状态

start lstr(listnerName); 启动监听

stop lstr(listnerName); 停止监听

4、查看队列深度

runmqsc

dis q(*);    查看所有各类队列的属性

dis qlocal(QName);   查看所有本地队列的属性

队列深度属性为:CURDEPTH

5、查看死信队列
dis qlocal(DEADQName)

三、日常维护项目

1、监控文件系统/var/mqm的使用情况,建议不要超过80%。

2、定期报告MQ系统错误,备份清理MQ系统错误记录
在遇到问题时,检查/var/mqm/errors目录下是否有新的FDC文件产生,如果有应当检查原因。另外,要定期检查该目录下MQ错误日志。

3、检查日志个数是否增长
使用命令cd移动到MQ日志所在目录(/var/mqm/log/QMgrName/active/),使用ls –l|wc命令统计。

4. 检查MQ队列管理器错误日志
当系统运行不正常时首先检查:/var/mqm/qmgrs/QMgrName/errors/AMQERR0n.LOG

错误消息生成后总是放在AMQERR01中,AMQERR02和AMQERR03文件用于保存历史错误消息。

附图:/var/mqm目录结构

注:转载于http://www.daobugu.com/New/index/id/109.html

MQ日常维护操作手册的更多相关文章

  1. primecoin 全节点日常维护操作

    primecoin 全节点日常维护操作: 一.关于primecoin维护,每天检查这6个地址是否能正常访问: http://api.primecoin.org/rest/pcoin/syncblock ...

  2. ORACLE11g Dataguard物理Standby 日常巡检操作手册

    ORACLE11g Dataguard物理Standby日常巡检操作手册 编写:_____________校对:_____________日期:_____________ 目录1.DG环境的日常巡检 ...

  3. Nginx日常维护操作(3)

    一.简明nginx常用命令 1. 启动 Nginx /sbin/nginx   service nginx start   2. 停止 Nginx /sbin/nginx -s stop   /sbi ...

  4. ORACLE 日常维护命令手册

    1查看数据库版本SELECT * FROM V$VERSION; 2查看数据库语言环境SELECT USERENV('LANGUAGE') FROM DUAL; 3查看ORACLE实例状态SELECT ...

  5. db2日常维护

    一. DB2日常维护操作 1.数据库的启动.停止.激活 db2 list active databases db2 active db 数据库名 db2start --启动 db2stop [forc ...

  6. ORACLE分区表梳理系列(二)- 分区表日常维护及注意事项(红字需要留意)

    版权声明:本文发布于http://www.cnblogs.com/yumiko/,版权由Yumiko_sunny所有,欢迎转载.转载时,请在文章明显位置注明原文链接.若在未经作者同意的情况下,将本文内 ...

  7. ORACLE日常操作手册

    转发自:http://blog.csdn.net/lichangzai/article/details/7955766 以前为开发人员编写的oracle基础操作手册,都基本的oracle操作和SQL语 ...

  8. MQ日常命令

    假设队列管理器为QMgrName,以下所有使用QMgrName的地方您都可以替换成您维护的mq队列管理器名称. 一.MQ的启动与停止 用root用户启/停需要root用户包含在mqm组中. 1.MQ的 ...

  9. svn服务配置和日常维护命令

    Subversion独立服务和与apache整合服务. 一 .Svn独立服务安装 操作系统: Redhat Linux AS3  AS 4   ContOS AS 4 安装包获取: 下载[url]ht ...

随机推荐

  1. JPA 系列教程12-复合主键-2个@Id+@IdClass

    复合主键 指多个主键联合形成一个主键组合 需求产生 比如航线一般是由出发地及目的地确定,如果要确定唯一的航线就可以用出发地和目的地一起来表示 ddl语句 同复合主键-2个@Id一样 Airline p ...

  2. MySQL复制表结构,表数据。

    1.复制表结构及数据到新表CREATE TABLE 新表 SELECT * FROM 旧表 这种方法会将oldtable中所有的内容都拷贝过来,当然我们可以用delete from newtable; ...

  3. winsock编程select模型

    winsock编程select模型 网络服务端连接数量过多时,为每一个连接申请一个线程会让机器性能急剧下降(大多说是因为线程在用户态和内核态之间切换会占用大量的CPU时间片).为了解决多线程带来的性能 ...

  4. Flask -- 静态文件 和 模板渲染

    静态文件 一般用于存放图片,样式文件(css, js等) 保存位置:包中或者文件所在目录创建一个 static 目录 访问:在应用中使用 /static/...即可访问 , 更好的方式是使用url_f ...

  5. iOSstoryboard xib下label怎么自适应宽度高度

    先看需求:两个Label,要求蓝色的label紧跟在红色的label文字后面 ok首选正常添加约束 红色的Label添加宽度,高度,左边,上边约束 蓝色的Label添加宽度,高度,左边,和红色的水平对 ...

  6. C# 16位的GUDI

    引用:  http://www.cnblogs.com/lcwzj/archive/2009/04/16/1436992.html 当我们想要获得一个唯一的key的时候,通常会想到GUID.这个key ...

  7. Linux平台从文件中查找字符赋值于变量

    以telnet方式登录Linux主机,在默认目录下用命令创建一个包含DUT wanIP的文本文件.[root] echo wanIP=88.0.100.253 > ./wanIP.txt在默认目 ...

  8. 下拉的DIV+CSS+JS二级树型菜单

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. redis运维的一些知识点

    恰好看到一些redis需要主要的东西 记下 供参考 原文地址 http://hi.baidu.com/ywdblog/item/1a8c6ed42edf01866dce3fe3 最近在线上实际使用了一 ...

  10. 深入理解HTTP协议(转) 浏览器和服务器如何通信(HTTP协议)

    http协议学习系列 1. 基础概念篇 1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写.它的发展是万维网协会(World Wide Web C ...