MQ笔记
操作命令:
目标 | 命令 |
---|---|
查看版本 | dspmqver |
显示运行的队列管理器 | dspmq |
进入队列管理器 | runmqsc 队列管理器名 |
启动队列管理器 | strmqm 队列管理器名 |
停止队列管理器 | endmqm 队列管理器名 |
删除队列管理器 | dltmqm 队列管理器名 |
查看通道状态 | dis chs(*) |
查看所有通道 | dis chl(*) |
查看所有队列 | dis queue(*) |
清除队列堵塞消息 | CLEAR QLOCAL(队列名) |
查看队列占用情况 | dis qs(*) type(handle) |
启动通道 | start CHANNEL(XXXX) |
查看死信队列 | dis ql(*) where(curdepth gt 0) 需进入到队列管理器内 |
查看死信队列 | echo " dis ql(*) where (curdepth gt 0) " | runmqsc 队列管理器名 |
清除死信队列 | ./msgcp -M管理器名 -Sq队列名 -m |
查看所有通道 | /opt/mqm/samp/bin 目录下 ./amqsget 队列名 管理器名> /dev/null |
新建队列管理器:
1、crtmqm QMUMBFEB
2、strmqm QMUMBFEB
3、runmqsc QMUMBFEB
4、创建队列 def ql(IBPS_CONNECTOR2) maxdepth(100000) defpsist(yes) MAXMSGL(4194304) replace
def ql(IBPS_CONNECTOR1) maxdepth(100000) defpsist(yes) MAXMSGL(4194304) replace
def ql(IBPSTOMSG_1) maxdepth(100000) defpsist(yes) MAXMSGL(4194304) replace
def ql(IBPSTOMSG_2) maxdepth(100000) defpsist(yes) MAXMSGL(4194304) replace
5、创建通道 DEFINE CHANNEL(CHANNEL_IBPS) CHLTYPE(SVRCONN) TRPTYPE(TCP) MCAUSER(‘mqm’) REPLACE
6、创建监听 (先stop,再delete)
DEF LISTENER(LSNRPMTS_LR) TRPTYPE(TCP) PORT(1425) BACKLOG(0) CONTROL(QMGR)
再start,查看DISPLAY LSSTATUS (LSNRPMTS_LR)监听状态 (2058)
7、关闭权限校验 (2035)
ALTER QMGR CHLAUTH ( DISABLED )
ALTER QMGR CONNAUTH(’ ')
REFRESH SECURITY TYPE(CONNAUTH)
报错原因:
完成代码2,原因为:
2058 新建通道管理器监听端口指定有误
2035 关闭权限校验
2053 可能是PMTS硬盘空间满了/队列满了
2009 提前关闭MQ,导致应用连接不到
2538 获取不到主机,可能是MQ没起或者配置有误(监听)
2085 队列配置有误或队列未创建