配置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
如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字
查看通道
dis chl(通道名)
启动通道
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。
创建接收方通道
DEFINE CHANNEL(SDR_ TEST) CHLTYPE(RCVR) REPLACE
创建服务器连接通道
DEFINE CHANNEL(SVRCONNNAME) CHLTYPE(SVRCONN) REPLACE
显示队列的所有属性
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)
清除队列中的所有消息
CLEAR QLOCAL(QNAME)
以下是一些高级配置的命令:
amqmcert 配置SSL证书
amqmdain 配置windows上的MQ服务
crtmqcvx 转换数据
dmpmqaut 转储对象权限管理
dmpmqlog 转储日志管理
dspmq 显示队列管理器
dspmqaut 显示打开对象的权限
dmpmqcap 显示处理程序容量和处理程序数
dspmqcsv 显示命令服务器状态
dspmqfls 显示文件名
dspmqtrc 跟踪MQ输出(HP-UNIX LINUX Solaris)
dspmqrtn 显示事务的详细信息
endmqcsv 停止队列管理器上的命令服务器
strmqcsv 启动队列管理器上的命令服务器
endmqtrc 停止跟踪
rcdmqimg 向日志写对象的映像
rcmqobj 根据日志中的映像重新创建一个对象
rsvmqtrn 提交或逆序恢复事务
from:http://wudeyao.com/?post=28
1.在<MQ_HOME>\bin (<MQ_HOME>指的是 Embeded JMS 的安装目录)目录下执行命令(查找队列管理器名):
<MQ_HOME>\bin > dspmq
QMNAME(WAS_washyf_server1) STATUS(正在运行)
其中的 WAS_washyf_server1 就是您的队列管理器名称
2.在<MQ_HOME>\bin目录下执行命令(启动MQ脚本语言环境):
<MQ_HOME>\bin >runmqsc WAS_washyf_server1
3.打开管理控制台 > 应用程序服务器 > <server_name> > 服务器组件 > JMS 服务器,找到您要监控的队列名,在本例中为:TestJMSQueue1,所以嵌入式JMS中真正应用的队列名应该为 WQ_TestJMSQueue1。(其中<server_name>是指 JMS队列 所在的应用服务器名)
4.切换到前面的命令行窗口下,运行如下的命令:
dis ql(*)
从列出的全部队列名中验证WQ_TestJMSQueue1的存在
5.在命令行窗口下输入:
dis ql('WQ_TestJMSQueue1')
会有如下的输出:
dis ql('WQ_TestJMSQueue1')
3 : dis ql('WQ_TestJMSQueue1')
AMQ8409: 显示队列细节。
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) GET(ENABLED)
PUT(ENABLED) DEFPRTY(0)
DEFPSIST(NO) MAXDEPTH(640000)
MAXMSGL(4194304) BOTHRESH(5)
SHARE DEFSOPT(SHARED)
HARDENBO MSGDLVSQ(PRIORITY)
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 命令。
addmqinf
添加 WebSphere MQ 配置信息(仅限于 Windows? 和 UNIX 平台)。
amqccert
检查不完整的证书链(仅限于 Windows)。
amqmdain
配置或控制 WebSphere MQ 服务控制(仅限于 Windows)。
amqmfsck(文件系统检查)
检查文件系统是否与 POSIX 标准一致并能够共享队列管理器数据以支持多实例队列管理器。
amqtcert
从 WebSphere MQ 5.3 或 5.3.1 迁移证书(仅限于 Windows)。
crtmqcvx
根据数据类型结构来创建数据转换代码。
crtmqm
创建队列管理器。
dltmqm
删除队列管理器。
dmpmqaut
转储一组 WebSphere MQ 对象类型和概要文件的当前权限列表。
dmpmqlog
显示并格式化 WebSphere MQ 系统日志的部分内容。
dspmq
显示关于队列管理器的信息。
dspmqaut
dspmqaut 显示特定 WebSphere MQ 对象的权限。
dspmqcsv
显示命令服务器的状态
dspmqfls
显示与 WebSphere MQ 对象相对应的文件名。
dspmqinf
显示 WebSphere MQ 配置信息(仅限于 Windows 和 Unix 平台)。
dspmqrte
确定消息通过队列管理器网络时采用的路由。
dspmqtrc
格式化并显示 WebSphere MQ 跟踪(仅限于 Unix 平台)。
dspmqtrn
显示不确定的事务。
dspmqver
显示 WebSphere MQ 版本和构建信息。
endmqcsv
为队列管理器停止命令服务器。
endmqlsr
结束队列管理器的所有侦听器进程。
endmqdnm
对某个队列停止 .NET 监视器(仅限于 Windows)。
endmqm
停止队列管理器或者切换到备用队列管理器。
endmqtrc
对所跟踪的某些或全部实体结束跟踪。
migmbbrk
migmbbrk 命令将发布/预订配置数据从 WebSphere Event Broker V6.0 或者 WebSphere Message Broker V6.0 或 V6.1 迁移到 WebSphere MQ V7.0.1 或更高版本。
mqftapp
启动文件传输应用程序的图形界面(仅限于 Windows 和 Linux x86 平台)。
mqftrcv
处理在服务器上使用 WebSphere MQ 文件传输应用程序接收到的文件(仅限于 Windows 和 Linux x86 平台)。
mqftrcvc
处理在客户机上接收到的文件(仅限于 Windows 和 Linux x86 平台)。
mqftsnd
使用 WebSphere MQ 文件传输应用程序从服务器发送文件(仅限于 Windows 和 Linux x86 平台)。
mqftsndc
使用 WebSphere MQ 文件传输应用程序从客户机发送文件(仅限于 Windows 和 Linux x86 平台)。
rcdmqimg
将一个对象或一组对象的映像写入日志,以便进行介质恢复。
rcrmqobj
根据日志中包含的一个或一组对象的映像来重新创建这些对象。
rmvmqinf
除去 WebSphere MQ 配置信息(仅限于 Windows 和 Unix 平台)。
rsvmqtrn
解决不确定的事务。
runmqchi
运行通道启动程序进程,以便自动启动通道。
runmqchl
启动发送方或请求方通道
runmqdlq
启动死信队列处理程序,以便监视和处理死信队列中的消息。
runmqdnm
使用 .NET 监视器来开始处理某个队列中的消息(仅限于 Windows)。
runmqlsr
运行侦听器进程,以便侦听各种通信协议的远程请求。
runmqsc
对队列管理器运行 WebSphere MQ 命令。
runmqtmc
在客户机上启动触发器监视器。
runmqtrm
在服务器上启动触发器监视器。
setmqaut
更改概要文件、对象或对象类的权限。可以对任意数目的主体或组授予权限或从中撤销权限。
setmqcrl
在 Active Directory 中管理 CRL(证书撤销列表)LDAP 定义(仅限于 Windows)。
setmqprd
登记 WebSphere MQ 生产许可证。
setmqscp
在 Active Directory 中发布客户机连接通道定义(仅限于 Windows)。
strmqcfg
启动 WebSphere MQ 资源管理器(仅限于 Windows 和 Linux x86 平台)。
strmqcsv
为队列管理器启动命令服务器。
strmqm
启动队列管理器或者使其准备好执行备用操作。
strmqtrc