查看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 请求 启停通道与重置通道序号的方法: $ runmqsc start chl(ChannelName); 启动通道 stop chl(ChannelName); 停止通道 reset channel(ChannelName); 重置通道序号。当本地与其他MQ队列管理器的通道无法正常启动的情况,检查日志发现是通道序号不一致,此时就需要先停止发送方通道,并在发送方和接收方进行通道计数的重置,重置后启动通道即可恢复通讯。想了解为什么要重置通道,请查看本站文章:Websphere MQ消息序号Message Sequence详解 3、查看通道监听状态与启停监听 $ runmqsc dis listner(*); 查看通道监听定义 dis lsstatu(listnerName); 查看监听状态 启动与停止监听的方法: $ runmqsc start lstr(listnerName); 启动监听 stop lstr(listnerName); 停止监听 4、查看队列深度 如果队列深度不断增加,不见减少,那么可能就有问题了,请检查并分析其原因。 $runmqsc dis q(*); 查看所有各类队列的属性 dis qlocal(QName); 查看所有本地队列的属性 队列深度属性为:CURDEPTH 5、查看死信队列深度 如果死信队列深度不断增加,那就需要分析其原因。 $runmqsc dis qlocal(DEADQName)