mq命令
MQ常用命令

物理定义Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il IlIl Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il--查看MQ版本--dspmqver--查看队列状态--dspmq--创建队列管理器--Crtmqm -q ECIS_QM--删除队列管理器--dltmqm ECIS_QM--启动队列管理器--Strmqm ECIS_QM--关闭队列管理器--en dmqm -i ECIS_QM 立即停止en dmqm -P ECIS_QM 强制停止--运行队列管理器--runm qsc ECIS_QM--定义监听器--DEFINE LlSTENER(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--启动通道--runm qchl -C ChIName -m ECIS_QM--启动侦听--runmqlsr - TCP -P 1616 -m ECIS_QMen dmqlsr -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 IiSte ner (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)逻辑定义Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il IlIl Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il./JMSAdmi nDELETE 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(Io.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常用命令及配置Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il IlIl Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il IlZZ创建本地队列QDEFINE QLOCAL ( Q )//将本地队列Q的最大深度设置为5ALTER QLOCAL (Q) MAXDEPTH(5)ZZ重新创建本地队列Q如果Q已经存在,则将其全部属性重置为缺省属性DEFINE QLOCAL (Q) REPLACEZZ创建远程队列DEFINE QREMOTE(QRNAME) RNAME(AAA) RQMNAME(QMGRNAME)XMITQ(QTNAME)ZZ创建传输队列define qlocal(CLV_HQ_TRAN) USage(Xmitq) INITQ(SYSTEM.CHANNEL」N ITQ) 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( '0.10.10.10 (1414) 'XMITQ(XQ) ZZ创建请求方通道DEFINE CHANNEL(D) CHLTYPE(RQSTR) CONNAME( '0.10.10.10 (1414)')ZZ创建服务器通道DEFINE CHANNEL (D) CHLTYPE(SVR) Xmitq (XQ1)ZZ创建服务器连接通道DEFINE CHANNEL(E) CHLTYPE(SVRCoNN) REPLACE〃显示所有远程队列display qremote (*)〃显示所有通道DiSPlay Cha nn el (*)//定义死信队列DEFINE QLOCAL(QUEUE) DEFPSIST(YES) REPLACE//设定队列管理器的死信队列ALTER QMGR DEADQ(QUEUE)设置MaXChannels 和MaxACtiVeChannels 属性(最大连接数)Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il IlIl Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il Il IlMaXChannels和MaXACtiVeChannels 分别代表队列管理器允许配置的通道的最大个数和允许同时运行的通道的个数,MaXChannels的缺省值是100,MaXACtiVeChannels 的缺省值与MaXChannels相同。
MQ常用命令

QUEUE(QMB)
TYPE(QLOCAL)
ACCTQ(QMGR)
ALTDATE(2009-02-06)
ALTTIME(11.41.44)
BOQNAME( )
BOTHRESH(0) CLUSTER( )
CLUSNL( ) CLWLPRTY(0)
CLWLRANK(0)
CLWLUSEQ(QMGR)
CRDATE(2008-12-05)
1.查看所有队列管理器 dspmq
查看所有的通道
dis chl(name)/dis chl(*)/dis chl(*) all/dis channel(name)
查看通道状态
dis chs(name)/dis chs(*)/dis chs(*) all
查看队列
display queue(name)
查看队列管理器信息(包括 CCSID 等信息) dis qmgr
种方法。 需要注意的时,当 DEPTH 属性值为0的时候,实际上就形成了同步通信。另外,当采用 Depth 触发时,产生触发消息以后,队列将被修改为非触发方式,如果需要再次触发,需要重新设 置成允许触发。
一般而言,在实际应用中,如果通道设置成触发方式,触发类型往往设置成为 FIRST 和
DEPTH。
6.修改 ccsid
alter qmgr ccsid(“XXX”)
一、MQ 的启动与停止
用 root 用户启/停需要 root 用户包含在 mqm 组中。
1、MQ 的启动 strmqm QMgrName 如果启动默认队列管理器,strmqm 后可以忽略队列管理器名称。 在意外情况停止队列管理器后,启动可能会失败,此时可以检查上次停止后是否有 IPC 资 源未释放,若有请予以删除,删除方法参考下面的“C.清理所有残留在系统内部的信号灯和 共享内存”。
mq操作命令

1. 启动命令行QMEMBFE是QM名字runmqsc QMEMBFE (进入MQ的命令行)显示队列DISPLAY QUEUE(*)显示通道DISPLAY CHANNEL(*)显示侦听器DISPLAY LISTENER(*)SDR发送方通道,RCVR接收方通道2. 创建MQMcrtmqm -lf 16384 -lp 10 -ls 10 QMEMBFE3. 启动MQMstrmqm QMEMBFE3.1删除MQMDltmqm QMEMBFEStart chl(通道名) 启动通道4. 运行脚本runmqsc QMEMBFE < mbfemq.sc5. 确定测试商业银行所对应接入点的通道状态是否为running#runmqsc QMEMBFEdis chs(5012900001.GW2900)dis chs(GW2900.5012900001)dis chstatus(ChannelName) 查看通道状态dis chs(5012900001.GW2900)1 : dis chs(5012900001.GW2900)AMQ8420: 通道状态未找到。
dis chs(GW2900.5012900001)2 : dis chs(GW2900.5012900001)AMQ8417: 显示通道状态细节。
CHANNEL(GW2900.5012900001) CHLTYPE(RCVR)CONNAME(172.26.190.4) CURRENTRQMNAME(QME2900) STATUS(RUNNING) SUBSTATE(RECEIVE) XMITQ( )172.26.190.4 14181. 创建队列管理器crtmqm -q QMA(-q表示QMA为默认队列管理器)2. 启动队列管理器strmqm QMA(对于默认队列管理器,则为strmqm )Q 3. 启动管理器平台runmqsc QMA4. 定义本地队列define qlocal(queueA)若用于队列管理器之间进行通信,这应为define qlocal(queue1) usage(xmitq)5. 定义远程队列define qremote(queue.remote) rname(.queue)rqmname(queueB)xmitq(queue1)(.queue为远程队列管理器queueB中的本地队列)6. 定义发送端通道define channel(queueA.queueB)chltype(sdr)conname(192.168.1.90(1414)) xmitq(queueA)trptype(tcp)7. 定义接受方通道define channel(queueA.queueB) chltype(rcvr) trptype(tcp)8. 更改侦听端端口号alter listener(system.default.listener.tcp)trptype(tcp)port(1415)9. 启动侦听start listener(system.default.listener.tcp)在命令行c:\runmqlsr10. 列出侦听状态display lsstatus(*)11. 测试,向队列中放入消息amqsput queue_name queue_manager_name从队列中取出消息amqsget queue_name queue_manager_name12. 在服务器方建立用于客户方链接的通道define channel(channel2) chltype(svrconn) trptype(tcp)mcauser()13. 在客户机方,使用MQSERVER定义客户机链接通道(如使用了ActiveDirectory服务支持,则可略过本步骤)SET MQSERVER=CHANNEL1/TCP/192.168.1.90(1414) //Windowsexport MQSERVER=’CHANNEL1/TCP/server-hostname(port)’//linux15. 测试,向队列中放入消息amqsputc queue_name queue_manager_name从队列中取出消息amqsgetc queue_name queue_manager_name16. 关闭队列管理器endmqm mqm_nameendmqm -i mqm_name17. 结束所有侦听进程endmqlsr -m mqm_name18. 查看WebSphere MQ版本号dspmqver19. 查看已有的MQ管理器dspmq20. 启动WebSphere MQ Explorerstrmqcfg21.查看通道的消息序列DIS CHS(CHANNEL_NAME) CURSEQNO;。
IBMMQ常用命令

IBMMQ常用命令IBM MQ是一款广泛应用于企业级应用程序开发和数据传输的消息队列软件。
该软件具有出色的可扩展性和稳定性,可满足不同规模和需求的企业应用场景。
为了更好地管理和操作IBM MQ,下面将介绍IBMMQ常用命令。
1. crtmqm命令crtmqm命令是创建IBM MQ队列管理器的命令。
例如,要创建一个名为QMGR1的队列管理器,我们可以使用以下命令:crtmqm QMGR12. strmqm命令strmqm命令是启动IBM MQ队列管理器的命令。
例如,要启动名为QMGR1的队列管理器,我们可以使用以下命令:strmqm QMGR13. endmqm命令endmqm命令是停止IBM MQ队列管理器的命令。
例如,要停止名为QMGR1的队列管理器,我们可以使用以下命令:endmqm QMGR14. runmqsc命令runmqsc命令是启动IBM MQ命令行管理工具的命令。
我们可以在命令行模式下使用该命令来执行各种MQ管理任务。
例如,要启动runmqsc,我们可以使用以下命令:runmqsc QMGR15. crtmqobj命令crtmqobj命令是创建IBM MQ队列和通道的命令。
例如,要创建一个名为MYQUEUE的本地队列,我们可以使用以下命令:crtmqobj QMGR1 QLOCAL(MYQUEUE)6. dltmqobj命令dltmqobj命令是删除IBM MQ队列和通道的命令。
例如,要删除名为MYQUEUE的本地队列,我们可以使用以下命令:dltmqobj QMGR1 QLOCAL(MYQUEUE)7. display命令display命令是显示IBM MQ队列管理器、队列和其他对象的信息的命令。
例如,要显示名为QMGR1的队列管理器的配置信息,我们可以使用以下命令:display qmgr QMGR18. Inquire命令Inquire命令是查询IBM MQ队列管理器、队列和其他对象的信息的命令。
MQ常用命令

查看死信队列:dis qlocal(DEADQ)
查看本地队列:dis qlocal(*)
查看本地队列深度: display ql(xxx) curdepth
查看远程队列深度:display qr(xxx) curdepth
查看ccsid: display qmgr all
更改监听: alter listener(xxxx) TRPTYPE(TCP) PORT(1417) CONTROL(QMGR)
停止监听: end LISTENER(xxxx)
查看通道当前序列号: dis chs(xxxx) curseqno
查看通道所有状态: dis chs(xxxxx) all
查看通道: dis chl(xxx)
查看所有通道 dis chl(*) 或 dis chs(*或 dis lsstatu(listentName)
查看本地队列:dis qlocal(xxxxx) 查看其中的 CURDEPTH(0),若其>0,则说明本地队列堵塞
显示所有远程队列: display qremote(*)
显示所有通道: display channel(*)
ping通道:ping CHANNEL(xxxx)
清空队列内容:clear Qlocal(Qname)(需运行 runmqsc)
删除队列:delete qlocal(Qname)
以下为MQ常用命令:
查看发送通道:display channel(xxx)
查看队列管理器: dspmq
停止队列管理器:endmqm QMEMBFE
删除队列管理器:dltmqm QMEMBFE
重置发送通道:reset channel(xxxx)
mq命令大全

mq命令大全最近在配置MQ,记下了一些常用的MQ命令,如下:创建队列管理器crtmqm –q QMgrName-q是指创建缺省的队列管理器删除队列管理器dltmqm QmgrName启动队列管理器strmqm QmgrName如果是启动默认的队列管理器,可以不带其名字停止队列管理器endmqm QmgrName 受控停止endmqm –i QmgrName 立即停止endmqm –p QmgrName 强制停止显示队列管理器dspmq –m QmgrName运行MQ命令runmqsc QmgrName如果是默认队列管理器,可以不带其名字往队列中放消息amqsput QName QmgrName如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字从队列中取出消息amqsget QName QmgrName如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字启动通道runmqchl –c ChlName –m QmgrName启动侦听runmqlsr –t TYPE –p PORT –m QMgrName停止侦听endmqlsr -m QmgrName下面是在MQ环境中可以执行的MQ命令(即在runmqsc环境下可以敲的命令) 定义持久信队列DEFINE QLOCAL(QNAME)DEFPSIST(YES)REPLACE设定队列管理器的持久信队列ALTER QMGR DEADQ(QNAME)定义本地队列DEFINE QL(QNAME)REPLACE定义别名队列DEFINE QALIAS(QALIASNAME) TARGQ(QNAME)远程队列定义DEFINE QREMOTE(QRNAME)+RNAME(AAA)RQMNAME(QMGRNAME)+XMITQ(QTNAME)定义模型队列DEFINE QMODEL(QNAME)DEFTYPE(TEMPDYN)定义本地传输队列DEFINE QLOCAL(QTNAME) USAGE(XMITQ) DEFPSIST(YES) +INITQ(SYSTEM.CHANNEL.INITQ)+PROCESS(PROCESSNAME) REPLACE创建进程定义DEFINE PROCESS(PRONAME)+DESCR(‘STRING’)+APPLTYPE(WINDOWSNT)+APPLICID(’runmqchl -c SDR_TEST -m QM_ TEST’)其中APPLTYPE的值可以是:CICS、UNIX、WINDOWS、WINDOWSNT等创建发送方通道DEFINE CHANNEL(SDRNAME)CHLTYPE(SDR)+CONNAME(‘100.100.100.215(1418)’)XMITQ(QTNAME)REPLACE其中CHLTYPE可以是:SDR、SVR、RCVR、RQSTR、CLNTCONN、SVRCONN、CLUSSDR和CLUSRCVR。
mq的使用方法

mq的使用方法(原创版4篇)目录(篇1)1.MQ 的概念与作用2.MQ 的基本使用方法3.MQ 的高级使用方法4.MQ 的使用注意事项正文(篇1)一、MQ 的概念与作用消息队列(Message Queue,简称 MQ)是一种应用程序之间通过消息进行通信的技术。
它起到了解耦、削峰填谷、保证消息顺序等作用,广泛应用于企业级应用中。
二、MQ 的基本使用方法1.创建队列:通过命令创建一个队列,如:`创建队列 my_queue`。
2.发送消息:通过命令向队列发送消息,如:`发送消息 my_queue "Hello, MQ!"`。
3.接收消息:通过命令从队列接收消息,如:`接收消息 my_queue`。
三、MQ 的高级使用方法1.消息过滤:可以使用`#`符号进行消息过滤,如:`接收消息my_queue # "关键字"`。
2.消息持久化:可以通过设置队列属性实现消息持久化,以防止数据丢失。
3.消息重试:可以使用`retry`命令实现消息的重试发送。
四、MQ 的使用注意事项1.合理设置队列参数,如队列长度、消息大小等,以避免队列过满或消息丢失。
2.注意消息顺序,确保接收消息的顺序与发送消息的顺序一致。
3.确保消息发送与接收的及时性,避免出现消息堆积或接收不及时的情况。
通过以上方法,您可以熟练地使用消息队列(MQ)进行应用程序间的通信。
目录(篇2)1.MQ 的概念与作用2.MQ 的基本组成3.MQ 的使用方法4.MQ 的优缺点5.总结正文(篇2)一、MQ 的概念与作用消息队列(Message Queue,简称 MQ)是一种应用程序之间通过消息传递进行通信的技术。
它起到了解耦、异步处理、削峰填谷等作用,使得系统在面对高并发、高负载的情况下仍能稳定运行。
二、MQ 的基本组成一个典型的消息队列系统包括以下几个部分:1.生产者(Producer):负责向队列中发送消息的应用程序。
2.消费者(Consumer):负责从队列中接收并处理消息的应用程序。
mq常用命令

mq常用命令一、连接管理命令1. mqsc:进入MQSC模式,用于管理MQ对象。
2. runmqsc:运行MQSC脚本。
3. strmqm:启动MQ队列管理器。
4. endmqm:停止MQ队列管理器。
5. dspmq:显示当前系统中的MQ队列管理器。
6. crtmqm:创建新的MQ队列管理器。
7. dltmqm:删除指定的MQ队列管理器。
二、队列管理命令1. crtlq:创建本地队列。
2. dltmq:删除本地队列。
3. dmpmqmsg:显示队列中的消息。
4. amqmsrvn:启动MQ服务。
5. amqmdnet:启动MQ分布式网络服务。
6. amqmdgin:启动MQ远程订阅服务。
三、消息处理命令1. amqsput:向队列发送消息。
2. amqsget:从队列接收消息。
3. amqssub:订阅消息。
4. amqssubc:取消订阅消息。
5. amqsgrep:根据消息内容过滤消息。
四、通道管理命令1. crtmqchs:创建MQ通道。
2. dltmqchs:删除MQ通道。
3. strmqmchs:启动MQ通道。
4. endmqmchs:停止MQ通道。
5. dspmqchs:显示MQ通道。
6. amqssslc:启用SSL加密通道。
五、安全管理命令1. setmqaut:设置队列对象的授权。
2. dspmqaut:显示队列对象的授权。
3. setmqaut:设置队列管理器的授权。
4. dspmqaut:显示队列管理器的授权。
5. setmqaut:设置通道的授权。
6. dspmqaut:显示通道的授权。
六、日志管理命令1. amqsbcg:启用MQ日志。
2. amqsbcgc:停用MQ日志。
3. amqsbcgd:调整MQ日志大小。
4. dspmqlog:显示MQ日志。
七、监控命令1. dspmqrte:显示MQ路由器状态。
2. dspmqspl:显示MQ任务状态。
3. dspmqsrv:显示MQ服务状态。
IBM MQ常用命令

也有可能是发送接收队列的消息序列号不一致。如果不一致做一下reset操作。
还有可能是上一批消息没有提交。可以做一个resolve操作。
QR1 -> QT1 -> QL2
消息被放入到远程队列中,远程队列通过传输队列传输,最后传输到QM2中的本地队列。
出现问题,我们怎么办?
1 不能放入消息。
一般这种情况应该大部分是远程队列中的传输队列那个参数配置的不正确。
还有可能是队列的允许放入这个参数设置成了禁止。基本上就这两种情况。
更改属性
ALTER QMGR DESCR(‘NEW DESCRIPTION’)
ALTER QLOCAL(QNAME) PUT(DISABLED)
ALTER QALIAS(QNAME) TARGQ(TARGQNAME)
删除队列
DELETE QLOCAL(QNAME)
DELETE QREMOTE(QRNAME)
INITQ(SYSTEM.CHANNEL.INITQ)+
PROCESS(PROCESSNAME) REPLACE
创建进程定义
DEFINE PROCESS(PRONAME) +
DESCR(‘STRING’)+
APPLTYPE(WINDOWSNT)+
APPLICID(’ runmqchl -c SDR_TEST -m QM_ TEST’)
常用命令
创建队列管理器
crtmqm –q QMgrName
-q是指创建缺省的队列管理器
删除队列管理器
mq命令()

mq命令()take xzvftake cvflsof - p [进程id] 可以看到某id的打开文件状况.进程id可能用ps - ef | arrested查看进程打开文件数 lsof - p 10893 | wc - l数据库1) shutdown; / / 停止数据库强制关闭 shutdown immediate shutdown abort2) su / oracle / 切换为oracle用户3) sqlplus 用户名 / 密码 as sysdba;4) startup; / / 启动数据库5) select open _ fashion from v $database; / / 查看启动结果6) treatment; / / 退出sqlplus7) 退出orcl输入: lsnrctl start; / / 启侦听8) 退出orcl输入: lsnrctl status; / / 查看侦听状态9) 测字符集 select userenv ('language') from dual;aix下查看cputopaz< mq _ home > \ > dspmq binqmname (was _ washyf _ server1) status (正在运行)< mq _ home > \ > bin runmqsc was _ washyf _ server1the ql (*)descr (websphere application server queue - do not delete) process () boqname (system.dead.letter.queue)initq () trigdata ()cluster () clusnl ()queue (wq _ testjmsqueue1) crdate (2003 - 10 - 23)crtime (17.11.39) altdate (2003 - 10 - 23)alttime (17.11.39), goat (enabled)put (enabled) defprty (0)defpsist (no) maxdepth (640000)maxmsgl (4194304) bothresh (5)share defsopt (shared)hardenbo msgdlvsq (dai)retintvl (999999999) usage (normal)notrigger trigtype (first)trigdpth (1) trigmpri (0)qdepthhi (80) qdepthlo (20)qdpmaxev (enabled) qdphiev (disabled)qdploev (disabled) qsvcint (999999999)qsvciev (none) distl (no)deftype (predefined) type (qlocal)scope (qmgr) defbind (open)ipprocs (1) opprocs (0)curdepth (0)请注意curdepth (0) 这里的数字就是当前您队列里面的消息数, ipprocs (1) 表示有应用正在监控这个队列6.如果, 有应用正在监控这个队列把使用这个队列的应用停止.7.在命令行窗口下输入:clear ql ("wq _ testjmsqueue1")8: clear ql ("wq _ testjmsqueue1")amq8022: websphere mq 队列已清除.8.退出命令行使用 end 命令.一.mq基本操作mq中有几个很重要的组件: 队列管理器 (queuemanager) 、队列(queue) 和通道 (channel).The basic operation method is as follows:Create queue managerCrtmqm – Q QMgrName-q refers to the creation of a default queue managerDelete queue managerDltmqm QmgrNameStart queue managerStrmqm QmgrNameIf the queue manager is started by default, can not take its nameStop queue managerEndmqm QmgrName controlled stopEndmqm – I QmgrName stops immediatelyEndmqm – P QmgrName forced to stopDisplay queue managerDspmq – m QmgrNameRun MQSeries commandRunmqsc QmgrNameIf it is the default queue manager, can not take its nameSend messages to the queueAmqsput QName QmgrNameIf the queue is a queue in the default queue manager, the name of the queue manager can not be takenTake messages from the queueAmqsget QName QmgrNameIf the queue is a queue in the default queue manager, the name of the queue manager can not be takenStart channelRunmqchl – C ChlName – m QmgrNameStart listeningRunmqlsr – t TYPE – P PORT – m QMgrNameStop listeningEndmqlsr -m QmgrNameMQSeries commandThe definition of the dead letter queueDEFINE QLOCAL (QNAME) DEFPSIST (YES) REPLACESet the queue manager dead letter queueALTER QMGR DEADQ (QNAME)Defining local queuesDEFINE QL (QNAME) REPLACEDefining alias queuesDEFINE QALIAS (QALIASNAME) TARGQ (QNAME)Remote queue definitionDEFINE QREMOTE (QRNAME) +RNAME (AAA) RQMNAME (QMGRNAME) +XMITQ (QTNAME)Defining model queuesDEFINE QMODEL (QNAME) DEFTYPE (TEMPDYN)Defining local transport queuesDEFINE QLOCAL (QTNAME) USAGE (XMITQ) + DEFPSIST (YES) INITQ (SYSTEM.CHANNEL.INITQ) +PROCESS (PROCESSNAME) REPLACECreate process definitionDEFINE PROCESS (PRONAME) +DESCR ('STRING') +APPLTYPE (WINDOWSNT) +APPLICID ("runmqchl -c SDR_TEST -m QM_ TEST")The APPLTYPE value can be: CICS, UNIX, WINDOWS, WINDOWSNT etc. Create sender channelDEFINE CHANNEL (SDRNAME) + CHLTYPE (SDR)CONNAME ("100.100.100.215 (1418) ') XMITQ (QTNAME) REPLACEAmong them, CHLTYPE can be: SDR, SVR, RCVR, RQSTR, CLNTCONN, SVRCONN, CLUSSDR and CLUSRCVR.Create receiver channelDEFINE CHANNEL (SDR_ TEST) CHLTYPE (RCVR) REPLACECreating a server connection channelDEFINE CHANNEL (SVRCONNNAME) CHLTYPE (SVRCONN) REPLACE Displays all the attributes of the queueDISPLAY QUEUE (QNAME) [ALL]Displays the selected attributes of the queueDISPLAY QUEUE (QNAME) DESCR GET PUTDISPLAY QUEUE (QNAME) MAXDEPTH CURDEPTHDisplays all the attributes of the queue manager DISPLAY QMGR [ALL]Display process definitionDISPLAY PROCESS (PRONAME)change attributesALTER QMGR DESCR ('NEW DESCRIPTION')ALTER QLOCAL (QNAME) PUT (DISABLED)ALTER QALIAS (QNAME) TARGQ (TARGQNAME)Delete queueDELETE QLOCAL (QNAME)DELETE QREMOTE (QRNAME)Clear all messages in the queueCLEAR QLOCAL (QNAME)Two. Configure a remote communication connectionThe above describes the basic command operation of MQ, but only know that these are of no practical significance. The ultimate goal of MQ is to realize remote communication,So here's a specific example of how to implement remote connections. The purpose of this example is to build a pair of MQ servers that can implement message passing, which are based on NT and UNIX platforms respectively.First, build a queue manager on the NT sideCrtmqm – Q QM_NTStart queue managerStrmqm QM_NTRun the MQ console commandRunmqsc QM_NTCreate a dead letter queueDEFINE QL (NT.DEADQ) DEFPSIST (YES) REPLACEChange the property manager queue, set the dead letter queueALTER QMGR DEADQ (NT.DEADQ)Create process definitionDEFINE PROCESS (P_NT) +APPLTYPE (WINDOWSNT) +APPLICID ("runmqchl -c SDR_NT -m QM_NT")Creating a local transport queueDEFINE QL (QT_NT) USAGE (XMITQ) + DEFPSIST (YES)INITQ (SYSTEM.CHANNEL.INITQ) +PROCESS (P_NT) REPLACECreate a remote queue definition that corresponds to the local queue Q_UNIX on the UNIX machine, and the transport queue is QT_NTDEFINE QREMOTE (QR_NT) +RNAME (Q_UNIX) RQMNAME (QM_UNIX) +XMITQ (QT_NT)Create the sender channel, its transport queue is QT_NT, the remote host address is 10.10.10.2, the listening port is 1414DEFINE CHANNEL (SDR_NT) CHLTYPE (SDR) +CONNAME ("10.10.10.2 (1414) ') XMITQ (QT_NT) REPLACECreating a server connection channelDEFINE CHANNEL (S_NT) CHLTYPE (SVRCONN) REPLACECreating queue manager on the UNIX sideCrtmqm – Q QM_UNIXStart queue managerStrmqm QM_UNIXAdd listenerModify the /etc/services file and add a row:MQSeries 1414/tcp #MQSeries channel listenerModify the /etc/inetd.conf file, add a line (start listener)MQSeries stream TCP nowait MQM /usr/lpp/mqm/bin/amqcrsta amqcrsta – m QM_UNIXRun the following commands to make the modifications work Refresh – s inetdRun the MQ console commandRunmqsc QM_UNIXCreate a dead letter queueDEFINE QL (UNIX.DEADQ) DEFPSIST (YES) REPLACEChange the property manager queue, set the dead letter queueALTER QMGR DEADQ (UNIX.DEADQ)Create the channel, the name must be the same as the remote senderDEFINE CHANNEL (SDR_NT) CHLTYPE (RCVR) REPLACECreate local queueDEFINE QL (Q_UNIX) DEFPSIST (YES) REPLACECreating a server connection channelDEFINE CHANNEL (S_UNIX) CHLTYPE (SVRCONN) REPLACEAfter the above operation after completion of remote connection configuration. Next you need to verify that the configuration is correct.Starting the sender channel at the NT sideRunmqchl - C SDR_NT - M QM_NT or start CHL (SDR_NT)Send message from NT end to UNIX endAmqsput QR_NT QM_NTReceive messages at the UNIX end/usr/mqm/samp/bin/amqsget Q_UNIX QM_UNIXIf you receive the message, explain the configuration successfully.In addition, under NT, when the queue manager is set up, the listener is automatically established, and the listener is automatically started when the queue manager is started. Of course, the listener can also be configured manually.Modify the \winnt\system32\drivers\etc\services file, add a line in the file:MQSeries 1414/tcp #MQSeries channel listenerStart listenerRunmqlsr – t TCP – P 1414 – m QM_NTThe above illustrates how to establish a simple one-way transmission network. Messages are transmitted from the NT end to the UNIX end. The establishment of remote connections from the UNIX end to the NT side is similar to the above, and the establishment of two-way transmission network is the same principle.Three.Configuring JNDICan send and receive messages with JMS, often used JNDI. Because of the way that JNDI is more flexible, the program is relatively simple.After installing the MQSeries Client for Java, find the JMSAdmin.config file in the \java\bin directory. The file is mainly used to explain the storage mode and storage address of Context, corresponding to the two parametersINITIAL_CONTEXT_FACTORY and PROVIDER_URL in the file. The contents of the JMSAdmin.config file are typical:#INITIAL_CONTEXT_FACTORY=com.sun.jndi.ldap.LdapCtxFactoryINITIAL_CONTEXT_FACTORY=com.sun.jndi.fscontext.RefFSContext Factory#INITIAL_CONTEXT_FACTORY=InitialConte xtFactory##PROVIDER_URL=ldap://polaris/o=ibm, c=usPROVIDER_URL=file:/d:/temp#PROVIDER_URL=iiop://localhost/#SECURITY_AUTHENTICATION=noneINITIAL_CONTEXT_FACTORY said JMSAdmin Tool service provider. There are currently three supported values.Com.sun.jndi.ldap.LdapCtxFactory is used for LDAP, and if you use it, you must install a LDAP server.Com.sun.jndi.fscontext.RefFSContextFactory is used for file system context, and it only requires users to provide file paths to store context.InitialContextFactory is specifically provided for WebSphere, and it needs to be used with WebSphere's CosNaming resource library.PROVIDER_URL represents the URL of the session's initial context, and the root of all JNDI operations implemented by JMSAdmin tool. It corresponds to INITIAL_CONTEXT_FACTORY one by one.Ldap://hostname/contextname for LDAPFile:[drive:]/pathname for file system contextIiop://hostname[: port]/[? TargetContext=ctx] is used to access the WebSphere CosNaming name spaceFinally, there is another parameter, SECURITY_AUTHENTICATION, to illustrate whether JNDI passes security credentials to the service providers you use. Only when the use of the LDAP service providers that use this parameter. This parameter has threevalues, none (anonymous authentication), simple (simple authentication) and CRAM-MD5 authentication mechanism. If you do not provide a valid value, the default value is none.After confirming the configuration file, you can start the JMSAdmin console in the \java\bin directory. Can in any directory with the following command to start the console:JMSAdmin - CFG MQ_JAVA_INSTALL_PATH\java\bin\JMSAdmin.configThe MQ_JAVA_INSTALL_PATH MQSeries Client for Java installed in the root directory.If it fails to start, carefully check your environment variable is set correctly. According to my personal experience, in addition to adding com.ibm.mq.jar and com.ibm.mqjms.jar to the environment variables, fscontext.jar and providerutil.jar are added to the environment variables.Enter the JMSAdmin console, you can freely define sub context. The context of the operation, the following command:Display CTXDefine CTX (ctxname)Change CTX (ctxname)Change CTX (=up)Change CTX (=init)Delete CTX (ctxname)Of course, the main task here is not to define sub context, but to define the following objects:MQQueueConnectionFactoryMQTopicConnectionFactoryMQQueueMQTopic(there are other objects, such as MQXAQueueConnectionFactory, which are not commonly used, which are not explained here)You can use a lot of managed object verbs to manipulate the directory name in the space.改变、定义、显示、、和移动复制删除,它们的用法都算比较简单,这里只列举一二以作说明。
MQ测试常用命令

测试1 本地通道测试1、使用mqadmin用户登录2、执行crtmqm -q TEST_QM,建立测试用的消息管理器。
3、执行strmqm TEST_QM,启动测试用的消息管理器。
4、执行runmqsc TEST_QM5、输入define ql(DATA),回车,建立本地队列DATA6、输入end回车至此,本地测试通道搭建完成,下面进行测试。
1、执行amqsput DATA TEST_QM2、随便输入一些内容,一行为一条消息,可输入多条。
3、输入完毕连续按两次回车退出。
4、执行amqsget DATA TEST_QM,看看能否收到刚才输入的消息,如果能收到,证明MQ 本地通道是正常的。
如果收不到,则MQ安装有问题。
测试2 远程通道测试如果测试1通过,继续进行远程通道测试。
1、执行runmqsc TEST_QM2、输入define chl(TO.TEST) chltype(RCVR) trptype(tcp),创建接收方通道。
3、输入end并回车。
4、执行crtmqm TEST_RQM,建立模拟的远程通道。
5、执行strmqm TEST_RQM6、执行runmqsc TEST_RQM7、输入define ql(TEST) usage(xmitq)8、输入define qr(REMOTE.DA TA) rname(DATA) rqmname(TEST_QM) xmitq(TEST)9、输入define chl(TO.TEST) chltype(sdr) conname('127.0.0.1(1111)') xmitq(TEST) trptype(tcp),创建发送方通道。
10、输入end11、执行runmqlsr -t tcp -m TEST_QM -p 1111,启动接收方的监听。
12、新打开一个telnet会话,用mqadmin登录,执行runmqsc TEST_RQM13、输入start chl(TO.TEST)14、输入end至此,模拟的远程测试通道建立完成,以下进行测试。
(转)mq常用命令

(转)mq常⽤命令(暂时放⼀放)创建队列管理器crtmqm qmgrname删除队列管理器dltmqm [-z] qmgrname启动队列管理器strmqm qmgrname停⽌队列管理器endmqm –i QmgrName ⽴即停⽌endmqm –p QmgrName 强制停⽌显⽰队列管理器dspmq 查看全部队列dspmq -m qmgrname ----显⽰具体的队列管理器启动代理:strmqbrk -m GCP_QM启动监听器runmqlsr -m qmgrname -p port -t tcpexp runmqlsr -m GCP_QM -p 1414 -t tcp &停⽌监听endmqlsr -m qmgrname选择队列管理器runmqsc Qmgrname退出队列管理器end显⽰队列属性DISPLAY QLOCAL (Q)查看全部队列dis q(*)AIX查看系统版本:lslpp -ah mqm.server.rtelinux查看系统版本:rpm -qa |grep mqendmqm QmgrName 受控停⽌endmqm –i QmgrName ⽴即停⽌endmqm –p QmgrName 强制停⽌dis qmgr 查看队列管理器属性dis q(GCP_NOTIFY_Q_RECOL) 显⽰全部属性dis qs(GCP_NOTIFY_Q_RECOL) 显⽰主要属性修改队列属性ALTER QMGR CCSID (1381)定义队列属性DEFINE CHANNEL (C) CHLTYPE (SDR) CONNAME ('127.0.0.1 (1414)') XMITQ (XQ) exp define channel(CH1) chltype(SVRCONN) trptype(TCP) mcauser('mqm')创建本地队列define qlocal(QueueName)修改队列属性alter qlocal(Qname) maxdepth(5)重新创建本地队列,属性重置为缺省define qlocal (Qname) replace删除本地队列delete qlocal(Qname)查看错误原因以mq⽤户登录,查看mq的错误原因:直接 mqrc 2085查看端⼝占⽤情况通过ps -ef |grep mgrps -ef| grep mqm| grep 1418mqm 9204 1 0 May 05 ? 0:02runmqlsr -m GCP_QM -t TCP -p 1417扩⼤队列深度#su – mqm#runmqsc P_DNMS_QMalter QLOCAL(Q_RM_DATA) MAXDEPTH(100000) //增⼤配置队列深度alter QLOCAL(Q_PM_DATA) MAXDEPTH(100000) //增⼤性能队列深度队列授权:setmqaut -m P_DNMS_QM -n Q_REDEF_ALARM -t q -g mqm +all WebSphere MQ 的⼯作原理的核⼼就是存储转发查看队列管理器的运⾏状态:dspmq查看jmsbreak的运⾏状态:dspmqbrk往队列中放消息amqsput QName QmgrName清除队列中的所有消息CLEAR QLOCAL(QNAME)ps:在清除队列中的消息时候,需要先将占⽤队列的进程停掉,然后执⾏上述清除命令。
MQ常用命令

常用MQ命令:启动队列管理器strmqm <QMName>立即停止endmqm –i <QMName>必须看到ended,命令正常结束,才能说明MQ队列管理器已经终止dspmq显示结果中QMNAME表示MQ队列管理器的名称,STA TUS表示当前运行状态运行状态有Starting 正在启动Running 正在运行Ending 正在停止Ended normally 已经正常终止Ended immediately 已经立即终止Ended preemtively 已经强制终止Ended unexpectively 异常终止注意:停止系统后必须使用dspmq命令进行状态检查使用MQSC脚本命令管理runmqsc <QMName>常用MQSC脚本命令查看队列管理器信息DISPLAY QMGR查看所有通道状态DISPLAY CHSTATUS(*)检查通道具体状态DISPLAY CHSTATUS(ChannelName) ALL检查通道配置DISPLAY CHANNEL(ChannelName)检查队列配置和深度DIS QLOCAL(QName)该命令的显示结果可以看出队列当前深度启动通道START CHANNEL(ChannelName)停止通道STOP CHANNEL(ChannelName)解决通道中的可疑交易RESOLVE CHANNEL(ChannelName) ACTION ( COMMIT | BACKOUT )复位通道序号RESET CHANNEL(ChannelName)。
MQ实验2_常用管理命令

MQ实验2试验目的1.熟悉MQ的管理2.熟悉MQ对象的创建方法3.熟悉MQ常用命令试验环境WinXP, SP2WebSphere MQ 6.0.2.0实验步骤尽管MQ在Windows中具有图形界面, 为了方便扩展到UNIX环境, 本练习中采用命令方式创建对象通过本试验,你可以1.创建和启动队列管理器2.用控制命令创建本地队列和显示MQ对象的属性3.修改队列属性和创建别名队列4.使用MQ产品中提供的样例程序放入消息,浏览消息和取出消息步骤一: 创建和启动队列管理器1.打开一个cmd环境, 进入到MQ安装目录下的bin目录,即C:\IBM\WMQ\bin2.创建一个缺省队列管理器,名为QM1,在后面的试验中,我们都将使用这个队列管理器,QM1是本机的队列管理器⇨crtmqm –q QM1队列管理器名称是大小写敏感的, -q参数表明是缺省队列管理器3.启动队列管理器⇨strmqm因为是启动缺省队列管理器,所以不需要提供队列管理器名称步骤二:使用交互式命令进行操作4.用runmqsc命令执行以下任务,输入MQ的交互式命令,在终端显示结果⇨runmqsci.显示队列管理器属性=> DISPLAY QMGRQMGR是保留字,不要用队列管理器名称代替ii.显示当前队列管理器中以”SYSTEM”开头的所有队列名称=> DISPLAY Q(SYSTEM*)iii.创建一个本地队列,定义中包含文本描述=> DEFINE QL(QL.A) DESCR(‘QL.A Text’)iv.显示该队列的所有属性=> DISPLAY QL(QL.A)v.修改该队列允许的最大消息数为1000=> ALTER QL(QL.A) MAXDEPTH(1000)vi.再次查看该队列属性,看修改是否成功,而队列描述不变=> DISPLAY QL(QL.A)vii.定义第二个本地队列,包含文本描述=> DEFINE QL(QL.B) DESCR(‘QL.B Text’)viii.显示队列QL.B的所有属性=> DISPLAY QL(QL.B)ix.使用带REPLACE的DEFEINE命令而不是用ALTER命令修改队列QL.B 的最大消息数为2000=> DEFINE QL(QL.B) REPLACE +MAXDEPTH(2000)x.查看队列QL.B的所有属性,是否该队列创建成功,描述是什么=> DISPLAY QL(QL.B)5.退出runmqsc模式⇨END步骤三:用包含命令的文件来执行MQ命令6.编辑一个文本文件E1_ST01.txt,包含步骤二中执行的所有命令如下DIS QMGRDIS Q(SYSTEM*)DEF QL(QL.A) DESCR('QL.A Text')DIS QL(QL.A)ALTER QL(QL.A) MAXDEPTH(1000)DIS QL(QL.A)DEF QL(QL.B) DESCR('QL.B Text')DIS QL(QL.B)DEF QL(QL.B) REPLACE +MAXDEPTH(2000)DIS QL(QL.B)7.执行以下命令,并把结果重定向到report文件当中,查看report文件⇨runmqsc < E1_ST01.txt > report步骤四:使用样例程序8.放一个消息到本地队列QL.A⇨amqsput QL.A队列管理器是可选参数,因为QL.A在缺省队列管理器中,所以不需要. amqsput,amqsbcg和amqsget样例位于C:\IBM\WMQ\Tools\c\Samples\Bin9.浏览队列QL.A中的消息,重定向输出到一个文件out以查看结果⇨amqsbcg QL.A >out⇨notepad out队列管理器是可选参数,因为QL.A在缺省队列管理器中,所以不需要10.从队列中取出消息,清空队列⇨amqsget QL.A队列管理器是可选参数,因为QL.A在缺省队列管理器中,所以不需要步骤五:使用别名队列11.创建本地队列QL.A的别名队列QA.A⇨runmqsc⇨DEF QA(QA.A) TARGQ(QL.A)12.限制别名队列的put请求功能=> ALTER QA(QA.A) PUT(DISABLED)13.修改QL.B的属性,限制它的put功能=> ALTER QL(QL.B) PUT(DISABLED)14.创建本地队列QL.B的别名队列QA.B=> DEF QA(QA.B) TARGQ(QL.B)15.尝试用样例程序放消息到本地队列和别名队列中⇨amqsput QL.A⇨amqsput QA.A⇨amqsput QL.B⇨amqsput QA.B可选试验步骤一: 队列操作1.在队列QL.A和QL.B中放入一些消息2.查看这两个队列中的队列深度=> DISPLAY Q(Q*) CURDEPTH3.定义一个新的本地队列QL.X,它具有跟QA.A一样的属性=> DEFINE QLOCAL(QL.X) LIKE(QA.A)4.报错了吗?,那么用QL.A的属性=> DEFINE QLOCAL(QL.X) LIKE(QL.A)5.往队列QL.X中放消息=> amqsput QL.X6.修改QL.A的描述=> ALTER QL(QL.A) DESCR(‘QL.A Text new’)7.显示你创建的所有队列的描述=> DISPLAY Q(Q*) DESCR8.清除队列QL.A=> CLEAR QL(QL.A)9.清除队列QA.A, error???=> CLEAR QA(QA.A)10.删除队列QL.X=> DELETE QL(QL.X)11.如果删除失败,再次删除=> DELETE QL(QL.X) PURGE。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
QDEPTHHI(80) QDEPTHLO(20)
QDPMAXEV(ENABLED) QDPHIEV(DISABLED)
XMITQ(QT_NT)
创建发送方通道,其传输队列为QT_NT,远程主机地址为10.10.10.2,侦听端口为1414
DEFINE CHANNEL(SDR_NT) CHLTYPE(SDR)+
CONNAME(‘10.10.10.2(1414)’) XMITQ(QT_NT) REPLACE
如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字
启动通道
runmqchl –c ChlName –m QmgrName
启动侦听
runmqlsr –t TYPE –p PORT –m QMgrName
停止侦听
endmqlsr -m QmgrName
MQSeries命令
8.退出命令行使用 end 命令。
一.MQ基本操作
MQ中有几个很重要的组件:队列管理器(QueueManager)、队列(Queue)和通道(Channel)。其基本的操作方法如下:
创建队列管理器
crtmqm –q QMgrName
-q是指创建缺省的队列管理器
删除队列管理器
远程队列定义
DEFINE QREMOTE(QRNAME) +
RNAME(AAA) RQMNAME(QMGRNAME) +
XMITQ(QTNAME)
定义模型队列
DEFINE QMODEL(QNAME) DEFTYPE(TEMPDYN)
定义本地传输队列
DEFINE QLOCAL(QTNAME) USAGE(XMITQ) DEFPSIST(YES) +
dspmq –m QmgrName
运行MQSeries命令
runmqsc QmgrName
如果是默认队列管理器,可以不带其名字
往队列中放消息
amqsput QName QmgrName
如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字
从队列中取出消息
amqsget QName QmgrName
创建服务器连接通道
DEFINE CHANNEL(S_NT) CHLTYPE(SVRCONN) REPLACE
在UNIX端创建队列管理器
crtmqm –q QM_UNIX
启动队列管理器
strmqm QM_UNIX
添加侦听程序
修改/etc/services文件,加入一行:
INITQ(SYSTEM.CHANNEL.INITQ)+
PROCESS(P_NT) REPLACE
创建远程队列定义,对应于UNIX机器上的本地队列Q_UNIX,传输队列为QT_NT
DEFINE QREMOTE(QR_NT)+
RNAME(Q_UNIX) RQMNAME(QM_UNIX)+
<MQ_HOME>\bin >runmqsc WAS_washyf_server1
dis ql(*)
DESCR(WebSphere Application Server queue - do not delete)
PROCESS( ) BOQNAME(SYSTEM.DEAD.LETTER.QUEUE)
INITQ( ) TRIGDATA( )
CLUSTER( ) CLUSNL( )
QUEUE(WQ_TestJMSQueue1) CRDATE(2003-10-23)
QDPLOEV(DISABLED) QSVCINT(999999999)
QSVCIEV(NONE) DISTL(NO)
DEFTYPE(PREDEFINED) TYPE(QLOCAL)
首先在NT端建一队列管理器
crtmqm –q QM_NT
启动队列管理器
strmqm QM_NT
运行MQ控制台命令
runmqsc QM_NT
创建死信队列
DEFINE QL(NT.DEADQ) DEFPSIST(YES) REPLACE
更改队列管理器属性,设置其死信队列
tar -xzvf
tar -cvf
lsof -p [进程ID] 可以看到某ID的打开文件状况。进程ID可能用 ps -ef|grep
查看进程打开文件数 lsof -p 10893 |wc -l
数据库
1) shutdown; //停止数据库
强制关闭 shutdown immediate shutdown abort
显示队列的所有属性
DISPLAY QUEUE(QNAME) [ALL]
显示队列的所选属性
DISPLAY QUEUE(QNAME) DESCR GET PUT
DISPLAY QUEUE(QNAME)MAXDEPTH CURDEPTH
显示队列管理器的所有属性
DISPLAY QMGR [ALL]
INITQ(SYSTEM.CHANNEL.INITQ)+
PROCESS(PROCESSNAME) REPLACE
创建进程定义
DEFINE PROCESS(PRONAME) +
DESCR(‘STRING’)+
APPLTYPE(WINDOWSNT)+
APPLICID(’ runmqchl -c SDR_TEST -m QM_ TEST’)
定义死信队列
DEFINE QLOCAL(QNAME) DEFPSIST(YES) REPLACE
设定队列管理器的死信队列
ALTER QMGR DEADQ(QNAME)
定义本地队列
DEFINE QL(QNAME) REPLACE
定义别名队列
DEFINE QALIAS(QALIASNAME) TARGQ(QNAME)
其中CHLTYPE可以是:SDR、SVR、RCVR、RQSTR、CLNTCONN、SVRCONN、CLUSSDR和CLUSRCVR。
创建接收方通道
DEFINE CHANNEL(SDR_ TEST) CHLTYPE(RCVR) REPLACE
创建服务器连接通道
DEFINE CHANNEL(SVRCONNNAME) CHLTYPE(SVRCONN) REPLACE
SCOPE(QMGR) DEFBIND(OPEN)
IPPROCS(1) OPPROCS(0)
CURDEPTH(0)
请注意CURDEPTH(0)这里的数字就是当前您队列里面的消息数,IPPROCS(1)表示有应用正在监控这
8) 退出ORCL输入:lsnrctl status;//查看侦听状态
9) 测字符集 select userenv('language') from dual;
aix下查看cpu
topas
<MQ_HOME>\bin > dspmq
QMNAME(WAS_washyf_server1) STATUS(正在运行)
DEFPSIST(NO) MAXDEPTH(640000)
MAXMSGL(4194304) BOTHRESH(5)
SHARE DEFSOPT(SHARED)
删除队列
DELETE QLOCAL(QNAME)
DELETE QREMOTE(QRNAME)
清除队列中的所有消息
CLEAR QLOCAL(QNAME)
二.配置一个能够通信的远程连接
以上讲述了MQ的基本命令操作,但只知道这些是没有实际意义的。MQ的最终目的是实现远程通信,所以下面就以一个具体的例子来说明如何实现远程连接。这个例子的目的是建立可以实现消息传递的一对MQ服务器,它们分别基于NT和UNIX平台。
ALTER QMGR DEADQ(NT.DEADQ)
创建进程定义
DEFINE PROCESS(P_NT)+
APPLTYPE(WINDOWSNT)+
APPLICID(’ runmqchl -c SDR_NT -m QM_NT’)
创建本地传输队列
DEFINE QL(QT_NT) USAGE(XMITQ) DEFPSIST(YES) +
MQSeries 1414/tcp #MQSeries channel listener
修改/etc/inetd.conf文件,加入一行(启动侦听程序)
CRTIME(17.11.39) ALTDATE(2003-10-23)
ALTTIME(17.11.39) GET(ENABLED)
PUT(ENABLED) DEFPRTY(0)
2) su - oracle //切换为oracle用户
3) sqlplus 用户名/密码 as sysdba;
4) startup; //启动数据库
5)select open_mode from v$database; //查看启动结果
6)quit;//退出sqlplus
7)退出ORCL输入:lsnrctl start; //启侦听
其中APPLTYPE的值可以是:CICS、UNIX、WINDOWS、WINDOWSNT等
创建发送方通道
DEFINE CHANNEL(SDRNAME) CHLTYPE(SDR)+
CONNAME(‘100.100.100.215(1418)’) XMITQ(QTNAME) REPLACE