MQ日常命令
假设队列管理器为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目录结
最新文章
- BZOJ 1717: [Usaco2006 Dec]Milk Patterns 产奶的模式 [后缀数组]
- iOS如何彻底避免数组越界
- ADT for Eclipse无法升级到23.0的解决方法(确保您的网络能够访问google的地址)
- WPF 提示框、确认框、确认输入框
- PHP 返回JSON
- 工作随笔——CentOS6.4支持rz sz操作
- Protocol Buffer技术详解(Java实例)
- MVC 菜鸟学习记录2
- HDU 1074 Doing Homework 状压DP
- C#中hashtable的赋值、取值、遍历、排序操作
- android中操作SQLite注意事项
- 有关struts中DispatchAction的用法小结
- MYSQL 表左连接 ON AND 和ON WHERE 的区别
- Android Studio 获取数字签名
- 软工+C(1): 题目设计、点评和评分
- Confluence 6 垃圾收集性能问题
- cf 443
- 【Eclipse使用】在eclipse里添加源文件和Api的方法
- hihocoder1489 Legendary Items 概率期望
- Spring MVC RESTful
热门文章
- ros中launch启动文件的使用方法
- PAT基础编程练习
- python学习(2)关于字符编码
- FTP - File Transfer Protocol
- Fastjson <;=1.2.62 远程代码执行-漏洞复现
- ab使用详解—如何使用apache性能测试工具进行压力测试
- git报错:fatal: No configured push destination.
- docker容器互联,实现目录、服务共享
- js将已有数组重新分组(将数组每10项分成一组)
- 痞子衡嵌入式:恩智浦i.MX RT1xxx系列MCU启动那些事(11.1)- FlexSPI NOR连接方式大全(RT1015/1020/1050)