假设队列管理器为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. (转)WebSphere MQ基础命令

    --查看MQ版本-- dspmqver --查看队列状态--dspmq --创建队列管理器--crtmqm -q ECIS_QM --删除队列管理器--dltmqm ECIS_QM --启动队列管理器 ...

  2. mq常用命令

    IBM MQ常用命令   常用命令 创建队列管理器crtmqm –q QMgrName-q是指创建缺省的队列管理器删除队列管理器dltmqm QmgrName启动队列管理器strmqm QmgrNam ...

  3. WebSphere MQ常用命令及配置

    WebSphere MQ常用命令及配置 (2012-06-23 23:09:16) 标签: mq命令 杂谈 分类: MQ [导读]WebSphere MQ常用命令及配置 一,队列管理命令 1,创建队列 ...

  4. MQ日常维护操作手册

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

  5. (转)mq常用命令

    (暂时放一放) 创建队列管理器crtmqm qmgrname   删除队列管理器dltmqm [-z] qmgrname   启动队列管理器strmqm qmgrname   停止队列管理器endmq ...

  6. RedHat Linux下MQ安装步骤及MQ常用命令

    1.检查操作系统及内存情况:lsb_release -a; 2   检查java 环境:java -version 3   新建用户空间.用户和组: //创建用户目录 mkdir /home/mqm ...

  7. (Linux 日常命令)[20171225]

    目的:记录Linux日常所用命令 [20171222]Linux环境下查看硬件组件型号 cat /proc/cpuinfo及lspci 查看CPU [root@t-redhat- ~]# cat /p ...

  8. IBM Websphere MQ常用命令及常见错误

    MQSC: MQ Script Command  (不区分大小写) 注明: 下面命令行中的队列管理器名字,队列名字分别用QmgrName, QName替代. 下面标蓝色的,都需要根据实际配置更改! 打 ...

  9. Shell脚本字符串匹配及日常命令工具 - 用法总结(技巧指南)

    Shell提供了很多字符串和文件处理的命令,如awk.expr.grep.sed等命令,还有文件的排序.合并和分割等一系列的操作命令.下面重点总结下Shell字符串处理.文本处理以及各类命令及函数用法 ...

随机推荐

  1. java线程池及创建多少线程合适

    java线程池 1.以下是ThreadPoolExecutor参数完备构造方法: public ThreadPoolExecutor(int corePoolSize,int maximumPoolS ...

  2. python中线程共享资源问题的解决

    线程跟进程有些相似,有时被称作轻量级的进程,但不同的是,所有的线程运行在同一个进程中,共享相同的运行坏境. 进程和线程都是实现多任务的一种方式,例如:在同一台计算机上能同时运行多个QQ(进程),一个Q ...

  3. 简明 homebrew

    介绍 包管理工具几乎已经成为现代操作系统或者开发平台不可或缺的工具软件,无论做开发,或是管理服务器,都免不了用到一些第三方依赖包.包管理工具的基本功能就是提供一个集中的平台,可以在这里找到大部分流行的 ...

  4. 90万条数据玩转RFM用户分析模型

    RFM,是一种经典的用户分类.价值分析模型: R,Rencency,即每个客户有多少天没回购了,可以理解为最近一次购买到现在隔了多少天. F,Frequency,是每个客户购买了多少次. M,Mone ...

  5. SpringBoot之ApplicationRunner接口和@Order注解

    我们在开发中可能会有这样的情景.需要在容器启动的时候执行一些内容.比如读取配置文件,数据库连接之类的.SpringBoot给我们提供了ApplicationRunner接口来帮助我们实现这种需求.该接 ...

  6. SpringBoot Jpa 自定义查询

    SpringBoot Jpa 自定义查询 持久层Domain public interface BaomingDao extends JpaRepository<BaomingBean,Inte ...

  7. mybatis级联查询,多对一查询问题

    在使用Mybatis进行多表级联查询时遇到了一个问题:查询结果只有一项,但正确结果是两项.经测试,SQL语句本身没有问题. 在SQL映射文件(XML)中: <!-- 级联查询数据 --> ...

  8. [教程分享]锐族MP3刷固件教程

    转载自我的博客:https://blog.ljyngup.com/archives/163.html/ (废话较多见谅) 在到学校前发现几个月前锐族mp3的固件更新了,赶紧刷了一个,发现网上关于这个售 ...

  9. ## springboot 下策略模式的简单使用

    1.灵魂三问 接手前人(已跑路)项目快乐否? 前人项目不写注释懵逼否? 一个方法中一堆if/else,且业务判断条件用简单数字(或英文字母),不带注释,想打人否?     所以,对于上述三个问题,我写 ...

  10. 使用helm安装jenkin和gitlab

    一.使用服务介绍 存储: 阿里云NAS k8s网络插件: calico k8s版本: 1.15.2 二.helm安装 https://www.cnblogs.com/zhangb8042/p/1020 ...