一.MQ基本操作
MQ中有几个很重要的组件:队列管理器(QueueManager)、队列(Queue)和通道(Channel)。其基本的操作方法如下:
1)创建队列管理器
crtmqm –q QMgrName-q是指创建缺省的队列管理器
2)删除队列管理器
dltmqm QmgrName
3)启动队列管理器
strmqm QmgrName
如果是启动默认的队列管理器,可以不带其名字
4)停止队列管理器
endmqm QmgrName 受控停止
endmqm –i QmgrName 立即停止
endmqm –p QmgrName 强制停止
5)显示队列管理器
dspmq –m QmgrName
6)运行MQSeries命令
runmqsc QmgrName
如果是默认队列管理器,可以不带其名字
7)往队列中放消息
amqsput QName QmgrName
如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字
8)从队列中取出消息
amqsget QName QmgrName
如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字
9)启动通道
runmqchl –c ChlName –m QmgrName
例:runmqchl -c CLNT_CHAN_PUMA -m JTXWBP01
10)启动侦听
runmqlsr –t TYPE –p PORT –m QMgrName
例:runmqlsr -t TCP -p 1414 -m JTXWBP01
11)停止侦听
endmqlsr -m QmgrName
MQSeries命令
1)定义死信队列
DEFINE QLOCAL(QNAME) DEFPSIST(YES) REPLACE
2)设定队列管理器的死信队列
ALTER QMGR DEADQ(QNAME)
3)定义本地队列
DEFINE QL(QNAME) REPLACE
4)定义别名队列
DEFINE QALIAS(QALIASNAME) TARGQ(QNAME)
5)远程队列定义
DEFINE QREMOTE(QRNAME) +
RNAME(AAA) RQMNAME(QMGRNAME) +
XMITQ(QTNAME)
6)定义模型队列
DEFINE QMODEL(QNAME) DEFTYPE(TEMPDYN)
7)定义本地传输队列
DEFINE QLOCAL(QTNAME) USAGE(XMITQ) DEFPSIST(YES) +
INITQ(SYSTEM.CHANNEL.INITQ)+
PROCESS(PROCESSNAME) REPLACE
8)创建进程定义
DEFINE PROCESS(PRONAME) +
DESCR(‘STRING’)+
APPLTYPE(WINDOWSNT)+
APPLICID(’ runmqchl -c SDR_TEST -m QM_ TEST’)
其中APPLTYPE的值可以是:CICS、UNIX、WINDOWS、WINDOWSNT等
9)创建发送方通道
DEFINE CHANNEL(SDRNAME) CHLTYPE(SDR)+
CONNAME(‘100.100.100.215(1418)’) XMITQ(QTNAME) REPLACE
其中CHLTYPE可以是:SDR、SVR、RCVR、RQSTR、CLNTCONN、SVRCONN、CLUSSDR和CLUSRCVR。
10)创建接收方通道
DEFINE CHANNEL(SDR_ TEST) CHLTYPE(RCVR) REPLACE
11)创建服务器连接通道
DEFINE CHANNEL(SVRCONNNAME) CHLTYPE(SVRCONN) REPLACE
12)显示队列的所有属性
DISPLAY QUEUE(QNAME) [ALL]
显示队列的所选属性
DISPLAY QUEUE(QNAME) DESCR GET PUT
DISPLAY QUEUE(QNAME)MAXDEPTH CURDEPTH
显示队列管理器的所有属性
DISPLAY QMGR [ALL]
显示进程定义
DISPLAY PROCESS(PRONAME)
更改属性
ALTER QMGR DESCR(‘NEW DESCRIPTION’)
ALTER QLOCAL(QNAME) PUT(DISABLED)
ALTER QALIAS(QNAME) TARGQ(TARGQNAME)
删除队列
DELETE QLOCAL(QNAME)
DELETE QREMOTE(QRNAME)