MQ常用命令 |
您所在的位置:网站首页 › mq查看所有队列命令 › MQ常用命令 |
--查看MQ版本-- dspmqver --查看队列状态--dspmq --创建队列管理器--crtmqm -q ECIS_QM --删除队列管理器--dltmqm ECIS_QM --启动队列管理器--strmqm ECIS_QM --关闭队列管理器--endmqm -i ECIS_QM 立即停止endmqm -p ECIS_QM 强制停止 --运行队列管理器--runmqsc ECIS_QM --定义监听器--DEFINE LISTENER(LSR_4_ECIS_QM) TRPTYPE(TCP) PORT(1616) CONTROL(QMGR) REPLACESTART LISTENER(LSR_4_ECIS_QM) --定义通道--DEFINE CHANNEL(ECIS.SVRCONN) CHLTYPE(SVRCONN) MCAUSER('mqm') REPLACE --启动通道--runmqchl –c ChlName –m ECIS_QM --启动侦听--runmqlsr –t TCP –p 1616 –m ECIS_QMendmqlsr -m ECIS_QM --定义队列--DEFINE QL(Q_SVC2ADP_4_TELNET) REPLACEDEFINE QL(Q_SVC2ADP_4_JDBC) REPLACEDEFINE QL(Q_SVC2ADP_4_HTTP) REPLACEDEFINE QL(Q_SVC2ADP_4_SOCKET) REPLACE --删除队列--delete QL(Q_SVC2ADP_4_TELNET) --查看监听器--display listener (LSR_4_ECIS_QM) --查看通道--dis chs(*) --查看通道--display ql(*) [all] --查看队列深度--display ql(Q_SVC2ADP_4_HTTP) curdepth --清除队列消息--clear ql(Q_SVC2ADP_4_HTTP) --查看CCSID--display qmgr all --修改CCSID--ALTER QMGR [FORCE] CCSID(5488)
逻辑定义##################################################./JMSAdmin DELETE QCF(T_ECIS_QCF) DELETE Q(T_ECIS_Q_SVC2ADP_TELNET) DELETE Q(T_ECIS_Q_ADP2SVC_TELNET)DELETE Q(T_ECIS_Q_SVC2ADP_JDBC)DELETE Q(T_ECIS_Q_ADP2SVC_JDBC) DELETE Q(T_ECIS_Q_SVC2ADP_HTTP)DELETE Q(T_ECIS_Q_ADP2SVC_HTTP)DELETE Q(T_ECIS_Q_SVC2ADP_SOCKET)DELETE Q(T_ECIS_Q_ADP2SVC_SOCKET) DEFINE QCF(T_ECIS_QCF) DESC() TRAN(CLIENT) HOST(10.151.128.13) QMGR(T_ECIS_QM) CHAN(T_ECIS.SVRCONN) PORT(2626) CCSID(5488) DEFINE Q(T_ECIS_Q_SVC2ADP_TELNET) DESC() QMGR(T_ECIS_QM) QUEUE(Q_SVC2ADP_4_TELNET) CCSID(5488)DEFINE Q(T_ECIS_Q_ADP2SVC_TELNET) DESC() QMGR(T_ECIS_QM) QUEUE(Q_ADP2SVC_4_TELNET) CCSID(5488)DEFINE Q(T_ECIS_Q_SVC2ADP_JDBC) DESC() QMGR(T_ECIS_QM) QUEUE(Q_SVC2ADP_4_JDBC) CCSID(5488)DEFINE Q(T_ECIS_Q_ADP2SVC_JDBC) DESC() QMGR(T_ECIS_QM) QUEUE(Q_ADP2SVC_4_JDBC) CCSID(5488) DEFINE Q(T_ECIS_Q_SVC2ADP_HTTP) DESC() QMGR(T_ECIS_QM) QUEUE(Q_SVC2ADP_4_HTTP) CCSID(5488)DEFINE Q(T_ECIS_Q_ADP2SVC_HTTP) DESC() QMGR(T_ECIS_QM) QUEUE(Q_ADP2SVC_4_HTTP) CCSID(5488)DEFINE Q(T_ECIS_Q_SVC2ADP_SOCKET) DESC() QMGR(T_ECIS_QM) QUEUE(Q_SVC2ADP_4_SOCKET) CCSID(5488)DEFINE Q(T_ECIS_Q_ADP2SVC_SOCKET) DESC() QMGR(T_ECIS_QM) QUEUE(Q_ADP2SVC_4_SOCKET) CCSID(5488)
WebSphere MQ常用命令及配置################################################## //创建本地队列QDEFINE QLOCAL (Q)//将本地队列Q 的最大深度设置为5ALTER QLOCAL (Q) MAXDEPTH(5)//重新创建本地队列Q 如果Q已经存在,则将其全部属性重置为缺省属性DEFINE QLOCAL (Q) REPLACE//创建远程队列DEFINE QREMOTE(QRNAME) RNAME(AAA) RQMNAME(QMGRNAME) XMITQ(QTNAME)//创建传输队列define qlocal(CLV_HQ_TRAN) usage(xmitq) INITQ(SYSTEM.CHANNEL.INITQ) TRIGDATA(REV_CLV) TRIGTYPE(EVERY) TRIGGER REPLACE//创建接收端通道CDEFINE CHANNEL(C) CHLTYPE(RCVR)//创建发送方通道C ,连接对方的IP为10.10.10.10 端口为1414 通道连接的传输队列为XQDEFINE CHANNEL(C) CHLTYPE(SDR) CONNAME(’10.10.10.10 (1414)’) XMITQ(XQ)//创建请求方通道DEFINE CHANNEL(D) CHLTYPE(RQSTR) CONNAME(’10.10.10.10 (1414)’)//创建服务器通道DEFINE CHANNEL (D) CHLTYPE(SVR) xmitq (XQ1)//创建服务器连接通道DEFINE CHANNEL(E) CHLTYPE(SVRCONN) REPLACE //显示所有远程队列display qremote (*)//显示所有通道Display channel (*) //定义死信队列DEFINE QLOCAL(QUEUE) DEFPSIST(YES) REPLACE //设定队列管理器的死信队列ALTER QMGR DEADQ(QUEUE) 设置MaxChannels和MaxActiveChannels属性(最大连接数)##################################################MaxChannels和MaxActiveChannels分别代表队列管理器允许配置的通道的最大个数和允许同时运行的通道的个数,MaxChannels的缺省值是100,MaxActiveChannels的缺省值与MaxChannels相同。如果您的并发通道连接个数超过了100,您需要修改这两个参数。这对于大并发的Client/Server间通讯尤为重要。在unix平台,修改qm.ini文件,添加如下所示(路径:/var/mqm/qmgrs/HQ_SVR): Channels:MaxChannels = 3000 (最大通道数)MaxActiveChannels = 3000 (最大活动通道数)PipeLineLength=2AdoptNewMCA=ALL然后重启MQ
//定义持久性队列:DEFINE QLOCAL(QNAME) DEFPSIST (YES) REPLACE 传输队列管理##################################################1:定义传输队列DEFINE QLOCAL(Q_TRANSFER) USAGE(XMITQ)注:Q_TRANSFER:传输队列名 下面定义一个输入队列并带触发器DEFINE QLOCAL(Q_TRANSFER) USAGE(XMITQ) DEFPSIST(YES) INITQ(SYSTEM.CHANNEL.INITQ) TRIGDATA(DP_RCHANNEL) REPLACE注:参数1:传输队列名称(Q_TRANSFER)参数5:触发器数据(DP_RCHANNEL),也就是触发后要启动的通道。 2:在传输入队列上定义触发器DPCIS_Q_TRANSFER:传输队列触发器数据:DP_RCHANNEL,即:发送通道,触发时启动该通道alter qlocal(DPCIS_Q_TRANSFER) TRIGDATA('DP_RCHANNEL') TRIGTYPE(every) TRIGGER initq('SYSTEM.CHANNEL.INITQ') 远程队列管理##################################################通过输入以下命令来定义远程队列定义:define qremote(Q1) rname(Q1) rqmname(QM_APPLE) xmitq(QM_APPLE)注:参数1:队列名称(发送方远程队列名)参数2:远程队列(接收方的本地接收队列名)参数3:远程队列管理器(接收方队列管理器名)参数4:传输队列(发送方传输队列名) 通道管理##################################################1:创建接收方通道DEFINE CHANNEL(SDR_ TEST) CHLTYPE(RCVR) REPLACE define channel(Q_R_CHANNEL2) chltype(RCVR) replace注:参数1:接收方通道名称replace:表示有该通道了替换 2:创建发送方通道 DEFINE CHANNEL(SDRNAME) CHLTYPE(SDR) CONNAME (‘100.100.100.215(1418)’) XMITQ(QTNAME) REPLACE其中CHLTYPE可以是:SDR、SVR、RCVR、RQSTR、CLNTCONN、SVRCONN、CLUSSDR和CLUSRCVR。 define channel(DP_RCHANNEL) chltype(SDR) conname('10.101.2.3 (1414)') xmitq(Q_TRANSFER) replace注:通道名称:DP_RCHANNEL (发送方通道的名称) 传输队列:Q_TRANSFER (发送方传输队列的名称) 3:启动通道start channel(QM_ORANGE.QM_APPLE) 4:查看通道状态dis chs(*) 侦听器管理##################################################1:定义侦听器DEFINE LISTENER(TCPLS1) TRPTYPE(TCP) PORT(1414) REPLACE 2:启动侦听器start listener(TCPLS1)3:显示侦听器信息display listener(tcpls1) 创建触发##################################################一般设置MQ触发器的目的有两种, 一是自动启动发送端通道, 二是监视队列消息, 一旦发现新的消息, 则利用触发器启动相应的处理进程如果是利用触发器自动启动发送端通道, 使用方法1, 如果是利用触发器启动用户进程, 使用方法2 方法1A 在传输通道上设置触发器, 打开触发器控制, 类型为"第一个"B 初始队列为SYSTEM.CHANNEL.INITQ, 该队列为MQ专用的通道启动队列, 不需要手工启动其触发监视器C 触发器数据为发送端通道名称, 例如 QAG.50D 在发送端通道不活动的情况下, 在传输通道放入消息测试 方法2A 创建一个触发启动队列, 其模板为SYSTEM.DEFAULT.INITIATION.QUEUErunmqscdefine qlocal (MQ.TRIGER.INIQUEUE) like (SYSTEM.DEFAULT.INITIATION.QUEUE)B 定义进程 所谓进程就是触发器要触发的程序本例中进程名称:TRIGER.PROGRAM 应用程序标识为:"Notepad.exe"C 在队列上设置触发器, 一般为本地队列, 打开触发器控制, 类型根据自己的需要选择"第一个", "每个" 还是 "根据消息数量"D 初始队列选择A中创建的触发启动队列, 例如MQ.TRIGER.INIQUEUE, 进程名称设置为B中定义的进程名称, 例如TRIGER.PROGRAME 启动触发监视器 runmqtrm -m QAGWY -q MQ.TRIGER.INIQUEUEF 在本地队列放入消息进行测试 方法2也可以完成方法1的工作, 只需要将进程定义中的应用程序标识改为 runmqchl -m QAGWY -c QAG.50 就可以了, 但MQ中提供了专用的通道启动队列,而该队列不需要手工启动触发监视器, 因此方法1比方法2的步骤要少, 配置也简单, 所以在利用触发器自动启动发送端通道的情况下, 还是方法1更好.
|
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |