MQ通道的维护及常用命令精选文档
MQ常用命令
MQ常用命令以下为MQ常用命令:查看发送通道:display channel(xxx)查看队列管理器: dspmq停止队列管理器:endmqm QMEMBFE删除队列管理器:dltmqm QMEMBFE重置发送通道:reset channel(xxxx)启动通道:start chl(xxxx)查看通道: dis chl(xxx)查看所有通道 dis chl(*) 或 dis chs(*)查看所有监听:dis listener(*) 或 dis lsstatu(listentName)查看本地队列:dis qlocal(xxxxx) 查看其中的CURDEPTH(0),若其>0,则说明本地队列堵塞查看死信队列:dis qlocal(DEADQ)查看本地队列:dis qlocal(*)查看本地队列深度: display ql(xxx) curdepth查看远程队列深度:display qr(xxx) curdepth查看ccsid: display qmgr all显示所有远程队列: display qremote(*)显示所有通道: display channel(*)ping通道:ping CHANNEL(xxxx)清空队列内容:clear Qlocal(Qname)(需运行 runmqsc)删除队列:delete qlocal(Qname)更改监听:alter listener(xxxx) TRPTYPE(TCP) PORT(1417) CONTROL(QMGR)停止监听: end LISTENER(xxxx)查看通道当前序列号: dis chs(xxxx) curseqno查看通道所有状态: dis chs(xxxxx) all。
IBM MQ
MQ中有几个很重要的组件:队列管理器(QueueManager)、队列(Queue)和通道(Channel)。
其基本的操作方法如下:创建队列管理器crtmqm –q QMgrName-q是指创建缺省的队列管理器删除队列管理器dltmqm QmgrName启动队列管理器strmqm QmgrName如果是启动默认的队列管理器,可以不带其名字停止队列管理器endmqm QmgrName 受控停止endmqm –i QmgrName 立即停止endmqm –p QmgrName 强制停止显示队列管理器dspmq –m QmgrName运行MQSeries命令runmqsc QmgrName如果是默认队列管理器,可以不带其名字往队列中放消息amqsput QName QmgrName如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字从队列中取出消息amqsget QName QmgrName如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字启动通道runmqchl –c ChlName –m QmgrName启动侦听runmqlsr –t TYPE –p PORT –m QMgrName停止侦听endmqlsr -m QmgrNameMQSeries命令定义死信队列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通道的维护及常用命令
M Q通道的维护及常用命令Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-199986.3.1通道的状态下图显示了所有可能的通道状态层次结构,在 MQ for AIX, iSeries, HP-UX, , Solaris, 和 systems, 和 WebSphere MQ for OS/2 Warp平台,这些状态对连接通道也适用。
?图,通道状态如果通道的状态分为inactive和current两大类;“current”可以是Stopped,Starting,Retrying和Active的情况。
通道Acitve的情况又可分为Initializing,Binding,Requesting,Running,Paused或Stopping的状态。
下图显示通道状态之间的变化关系。
?注意:1. 当通道处于INITIALIZING, BINDING, REQUESTING, RUNNING, PAUSED, or 或STOPPING状态时,这将消耗系统,并且通道的进程或线程正在运行;因为通道是Active状态。
2. 当通道是STOPPED状态时, 会话可能是active,因为下一个状态时未知的。
下面将详细地介绍通道有关的维护命令。
创建通道为创建一个新通道,您需要创建两个通道定义,在通信的双方各定义一个。
这两个通道的名字必须时相同的,而且两端的通道类型必须匹配,例如:发送和接收。
可以使用MQSC命令“DEFINE CHANNEL”来创建通道,在命令中需要指定通道名,通道类型,连接名,通道描述(可选),传输队列名(可选)和传输协议,等还有许多可选的属性可以设置。
注意:建议在WebSphere MQ的网络中所有的通道名唯一,并且通道名中最好包含了源队列器名和目标队列管理器名。
创建通道的例子PE(SDR) +DESCR(’Sender channel to QM2’) +CONNAME(QM2) TRPTYPE(TCP) XMITQ(QM2) CONVERT(YES)I修改通道可以使用 MQSC命令“ALTER CHANNEL”来修改现有通道定义,但是通道名和通道类型不能修改。
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常用命令
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)
启动通道 runmqchl –c ChlName –m ECIS_QM
启动侦听 runmqlsr –t TCP –p 1616 –m ECIS_QM
endmqlsr m ECIS_QM
定义队列 DEFINE QL(Q_SVC2ADP_4_TELNET) REPLACE DEFINE QL(Q_SVC2ADP_4_JDBC) REPLACE DEFINE QL(Q_SVC2ADP_4_HTTP) REPLACE DEFINE QL(Q_SVC2ADP_4_SOCKET) REPLACE
WebSphere MQ常用命令及配置 ################################################## //创建本地队列Q DEFINE QLOCAL (Q) //将本地队列Q 的最大深度设置为5 ALTER 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)
RocketMQ运维指令整理
RocketMQ运维指令
1.1. 控制台使用
RocketMQ提供有控制台及一系列控制台命令,用于管理员对主题,集群,broker等信息的管理;
●登录控制台:
首先进入RocketMQ工程,进入/RocketMQ/bin
在该目录下有个mqadmin脚本
●查看帮助:
在mqadmin下可以查看有哪些命令
sh mqadmin
●查看具体命令的使用
sh mqadmin help 命令名称
例如,查看updateTopic的使用
sh mqadmin help updateTopic
1.2. 详细命令
1.2.1. 创建Topic
1.2.5. 更新Broker配置文件
1.2.8. 查看Topic统计信息
1.2.13. 查询Producer的网络连接
该命令只打印当前与cluster连接的producer网络连接信息
1.2.22. 设置消费进度
根据时间来设置消费进度,设置之前要关闭这个订阅组的所有consumer,设置完再启动,方可生效
1.2.24. 获取Consumer消费进度。
MQ维护手册
MQ维护手册(V1.0.1.1)北京东方宇业技术有限公司2011年1月1修订记录 (3)2MQ安装说明 (3)2.1linux下MQ安装说明 (3)2.2windows下MQ安装说明 (4)3MQ参数协定 (8)3.1两个通道(实时、非实时通道) (8)3.2一个通道 (8)4通过协定的参数编写MQ配置文件 (9)4.1MQ配置文件示例 (9)4.2MQ配置图解 (11)5MQ维护命令 (13)6windows下监控linux的MQ服务器 (14)7windows界面下MQ常用操作 (18)7.1查看和修改MQ队列管理器CCSID (18)7.2查看和清除MQ接收队列 (20)7.3查看和清除MQ传输队列 (21)7.4通过MQ发送队列发送测试消息 (22)7.5查看MQ接收队列和传输队列中的消息 (22)7.6刷新显示 (24)7.7MQ侦听器启动、停止 (24)7.8查看和修改MQ侦听器端口号 (25)7.9MQ通道启动、停止、复位、解析、ping (26)7.10查看和修改MQ发送通道对方IP和端口号 (27)8MQ日志 (28)9windows下MQ测试程序MqWinTest.exe (28)10MQ常见问题(FAQ) (29)10.1服务器上MQ接口程序起不来 (29)10.2服务器上MQ命令执行不了 (30)10.3查看MQ队列管理器是否正常 (30)10.4接收队列满或有大量消息 (31)10.5传输队列满或有大量消息 (31)10.6MQ通道故障 (32)10.7MQ错误日志文件太多,怎么清理 (33)10.8linux下MQ队列管理器开机自启动 (33)10.9如何区分远程和本地队列管理器 (34)10.10如何查看安装的mq的软件版本 (34)1修订记录2MQ安装说明2.1linux下MQ安装说明一:准备安装介质1. 拷贝mq_linux_setup_mini.tar.gz(该文件是我从安装光盘中弄出来的基本的安装包,版本为6.0,可到\\172.16.131.34\常用软件\MQ下找到)到某个目录,比如/home/ctc然后解压:cd /home/ctctar xzvf mq_linux_setup_mini.tar.gz之后多出一个目录mq二:安装mqsu -到rootcd /home/ctc/mq./mqlicense.sh -accept然后安装各个包:rpm -ivh MQSeriesRuntime-6.0.0-0.i386.rpmrpm -ivh MQSeriesServer-6.0.0-0.i386.rpmrpm -ivh MQSeriesClient-6.0.0-0.i386.rpmrpm -ivh MQSeriesSDK-6.0.0-0.i386.rpmrpm -ivh MQSeriesSamples-6.0.0-0.i386.rpm完了就装好了。
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日常维护文档一. 简介 (3)1. MQ目录结构 (3)二. 常用MQ系统命令 (3)1. 观察MQ队列管理器运行状态 (3)三. 使用MQSC脚本命令管理 (4)1. 进入指定队列管理器脚本命令控制台 (4)2. 常用MQSC脚本命令 (4)查看所有通道状态 (4)检查通道具体状态 (4)检查队列配置和深度 (4)四. 维护项目 (4)1. 实时监控以下文件系统使用情况: (4)2. 定期报告MQ系统错误,备份清理MQ系统错误记录 (5)3. 监控队列深度 (5)4. 检查死信队列 (5)5. 检查日志个数是否增长 (5)6. 检查MQ队列管理器错误日志 (5)7. 清理队列管理器IPC资源............................................................. 错误!未定义书签。
8. 检查、处理队列管理器pending事务 (6)一.简介1. MQ目录结构MQ系统错误记录目录:/var/mqm/errorsMQ队列管理器目录(缺省情况下)/var/mqm/qmgrs/注意:必须保证该目录下的任何文件不被修改,不被删除,否则MQ队列管理器将遭到致命破坏,无法恢复,本地消息全部丢失。
二.常用MQ系统命令1. 观察MQ队列管理器运行状态对于MQ 5.1及以下版本,通过ps –ef | grep 看下面进程是否存在:#amqzxma0 -m对MQ 5.2或以上版本,执行如下命令检查队列管理器运行状态:#dspmq显示结果中表示MQ队列管理器的名称,STATUS表示当前运行状态。
运行状态有:Starting 正在启动Running 正在运行Ending 正在停止Ended normally 已经正常终止Ended immediately 已经立即终止Ended preemtively 已经强制终止Ended unexpectively 异常终止注意:停止系统后必须使用dspmq命令进行状态检查例:$dspmq显示结果QMNAME(QM0000A) STA TUS(Running)QMNAME(QM0000B) STA TUS(Ended normally)三.使用MQSC脚本命令管理1. 进入指定队列管理器脚本命令控制台#runmqsc具体命令:以mqm用户登陆runmqsc2. 常用MQSC脚本命令查看所有通道状态DISPLAY CHSTATUS(*)若通道启动失败,需要检查、分析MQ队列管理器日志文件,可能原因包括:(1)配置错误,如CONNAME。
MQ维护与操作
MQ维护与操作MQ维护与操作1.MQ 的⽇志清理MQSeries ⽤错误⽇志记录与MQSeries ⾃⾝运⾏,队列管理器以及通道有关的消息。
因此,错误⽇志对于MQSeries 错误诊断⾮常重要。
AIX 平台上的MQSeries错误⽇志:当队列管理器名称已知,并且队列管理器可⽤时,错误⽇志位于/var/mqm/qmgrs/qmname/errors ⽬录下,如:与MQ 通道有关的消息。
当队列管理器不可⽤时,错误⽇志位于/var/mqm/qmgrs/@SYSTEM/errors ⽬录下;当错误是事务⽇志MQ 的故障维护与Client 应⽤程序有关,错误⽇志位于:/var/mqm/errors ⽬录下。
系统管理员要定期观察错误⽇志,清楚产⽣错误的原因,并根据需要定期清理或备份错误⽇志。
MQSeries 有两种事务⽇志类型:环型⽇志和线型⽇志,所在⽬录为/var/mqm/log环型⽇志预先指定⽇志⽂件的个数,MQ 运⾏时事务⽇志循环使⽤这些⽂件。
环型⽇志的⽇志⽂件所占空间不会增长,也⽆法备份MQ 应⽤系统的映像。
本系统现设计为环型⽇志。
线型⽇志指MQSeries 在运⾏的过程中会随着⽇志记录的增加⽽产⽣新的⽇志⽂件,线型⽇志的可以保证事务运⾏中产⽣的⽇志有⾜够的空间(除⾮⽂件系统空间不⾜),还可以把MQ 应⽤系统的映像备份到⽇志中,在发⽣故障后完整地恢复,线型⽇志⽇志⽂件所占⽤的空间会不断增长,需要系统管理员定期⼿⼯删除过期的⽇志⽂件。
2.如何清除MQ 队列管理器遗留的共享内存和信号量下⾯列出的是⼀段⽤于清除MQSeries 上⼀次遗留的共享内存和信号量的⼩程序。
通常遇到的状况是当启动队列管理器时失败,返回消息AMQ8041,指明以前的进程依然在使⽤中。
解决⽅法:运⾏以下脚本或命令。
ipcs -m| grep mqm | awk '{print $2}'|xargs -i ipcrm -m {}ipcs -s| grep mqm | awk '{print $2}'|xargs -i ipcrm -s {}3.如何解决MQSeries 队列管理器⽆法启动报“AMQ5522”错误当启动MQSeries 队列管理器时,⽆法启动,报“AMQ5522”错误。
MQ配置文档说明手册
MQ配置文档说明手册MQ配置文档说明手册第一章中间件消息通信技术概要一、中间件中间件,就是介于应用系统与系统软件之间的一类软件,它使用系统软件所提供的基础功能,衔接于应用系统的不同部分,能够达到资源共享和功能共享的目的。
消息中间件,是中间件众多产品分类中一个重要部分。
它能够适用于任何需要进行网络通信的系统,负责建立网络通信的通道,进行数据或文件发送。
消息中间件的一个重要作用是可以实现跨平台操作,为不同操作系统上的应用软件集成提供服务。
二、几种通信技术的比较1、CPI-CCPI-C是一种同步对话通信模式。
参加通信的一方发起一次对话,同时控制信息流动。
数据既可以由发送者传递到接受者,也可以反向流动。
参加通信的两个程序需要跟踪对话的状态,如果异常发生导致连接中断,则需要发送方重建并恢复这次通话。
通信双方既可以处于主从地位,也可以处于对等地位。
也就是说,CPI-C既支持客户端-服务器环境,也支持对等通信方式。
虽然CPI-C在一般情况下是一种同步通信类型,但是在一定环境中,如CICS,可以通过―临时数据队列‖实现一定程度的异步。
TCP/IP,SNA都支持CPI-C。
由于需要应用程序参与错误的检测与恢复,CPI-C的编程接口相当复杂。
2、RPCRPC,即远程过程调用,也是一种同步,对话方式的类型。
一个调用程序向服务器提成申请,该调用被负责通信的转接器发往远端系统。
调用者与被调用者关系是固定的,很难实现对等通信。
与CPI-C一样,通信错误需要应用程序自己维护。
另外在申请服务得到响应之前,服务申请者被阻隔,这不仅是应用的瓶颈所在,更有可能遭受拒绝式服务攻击。
3、MQI(Message Queue Interface)消息队列接口为程序提供了一种异步通信方式。
一个程序以一个队列作为中转与另一个程序相互通信,这个队列向对于该程序而言既可以是本地,也可以是远程。
当程序A与程序B进行通信时,A只需要将消息放入一条与B相通信的队列即可,至于消息何时,以何种协议,何种方式到达程序B与A没有关系。
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 常用命令
1. 队列管理器1.1. 创建队列管理器命令:crtmqm <qmgrName>示例:1.2. 启动队列管理器命令:strmqm <qmgrName>停止队列管理器命令:endmqm -c|-w|-i|-p <qmgrName>参数说明:-c 受控关闭(或停顿关闭)。
这是缺省值。
队列管理器停止,但仅当所有应用程序已断开连接后才停止。
当前正在处理的任何MQI 调用已完成。
立即将控制权返回给您,并且不通知您队列管理器是何时停止的。
对通过服务器连接通道连接的任何客户机应用程序的影响等效于以QUIESCE 方式发出的STOP CHANNEL 命令。
-w 等待关闭。
此类型的关闭等效于受控关闭(除了仅当队列管理器已停止后才将控制权返回给您之外)。
当执行关闭时,您将接收到消息:等待队列管理器qmName 结束。
对通过服务器连接通道连接的任何客户机应用程序的影响等效于以QUIESCE 方式发出的STOP CHANNEL 命令。
-i 立即关闭。
队列管理器在完成所有当前正在处理的MQI 调用后停止。
任何在该命令发出后发出的MQI 请求都将失败。
当队列管理器再次启动时,任何未完成的工作单元将回滚。
队列管理器结束后返回控制权。
对通过服务器连接通道连接的任何客户机应用程序的影响等效于以FORCE 方式发出的STOP CHANNEL 命令。
-p 抢先关闭。
仅在意外情况下使用此类型的关闭。
例如,当队列管理器在常规endmqm 命令下未停止。
队列管理器可以停止而不等待应用程序断开连接或MQI 调用完成。
这可能会产生WebSphere MQ 应用程序的不可预测的结果。
关闭方式设置为立即关闭。
如果队列管理器稍后未停止,关闭方式将升级,且终止所有剩余的的队列管理器进程。
对通过服务器连接通道连接的任何客户机应用程序的影响等效于以TERMINATE 方式发出的STOP CHANNEL 命令。
1.3. 删除队列管理器命令:dltmqm1.4. 显示队列管理器启动状态命令:dspmq2. 管理本地MQ对象使用MQSC 命令执行本地管理任务使用MQSC命令执行定义或修改队列、通道等操作。
(转)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队列管理器启动与关闭MQ可以通过命令行或者图形界面两种方式进行管理一、启动队列管理器1、在命令提示行,可以使用“strmqm QmgrName”的命令打开相应队列管理器(如果是启动默认的队列管理器,可以不带其名字)2、同时也可以使用图形界面启动队列管理器(1)使用strmqcfg命令,打开MQ资源管理器(2)右键单击一个队列管理器,点击“启动”(3)等待启动引导完成(4)启动完成二、关闭队列管理器1、通过命令行方式关闭队列管理器有3种方式:endmqm QmgrName 受控停止endmqm –i QmgrName 立即停止endmqm –p QmgrName 强制停止可以按照自己的需要通过命令关闭相应的队列管理器。
2、(1)右键点击一个运行中的队列管理器,点击“停止”。
(2)出现选项,选择受控或立即(3)等待系统引导完成,关闭完成。
使用命令行对MQ进行常用管理1、队列管理器启动后有时会出现队channel无法自动启动的情况(如下图)这时,可以通过运行runmqchl –c ChlName –m QmgrName命令启动通道。
如果仍然无法启动,可以运行runmqsc QmgrName命令打开MQSC命令,在MQSC下运行REFRESH CLUSTER(*)命令将集群刷新。
显示完成后,所有channel将重新启动2、群集相关的MQ命令:∙DISPLAY CLUSQMGR(name):显示群集中所有队列管理器的信息∙SUSPEND QMGR CLUSTER(cluster):通知群集中的其他队列管理器,表明该队列管理器暂时不可用,要注意的是,这并不意味着将该队列管理器从群集当中彻底移走。
∙RESUME QMGR CLUSTER(cluster):对应于SUSPEND命令,在群集中重新恢复对该队列管理器的使用。
∙REFRESH CLUSTER(cluster):对该命令要特别注意,千万不能从名字上去理解它的作用,它将破坏所有本地保留的与群集相关的信息,包括所有自动定义的群集通道。
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)。
IBMMQ常用命令
IBMMQ常用命令常用命令创建队列管理器crtmqm –q QMgrName-q是指创建缺省的队列管理器删除队列管理器dltmqm QmgrName启动队列管理器strmqm QmgrName如果是启动默认的队列管理器,可以不带其名字停止队列管理器endmqm QmgrName 受控停止endmqm –i QmgrName 立即停止endmqm –p QmgrName 强制停止显示队列管理器dspmq –m QmgrName运行MQSeries命令runmqsc QmgrName如果是默认队列管理器,可以不带其名字往队列中放消息amqsput QName QmgrName如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字从队列中取出消息amqsget QName QmgrName如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字启动通道runmqchl –c ChlName –m QmgrName启动侦听runmqlsr –t TYPE –p PORT –m QmgrName停止侦听endmqlsr -m QmgrNameMQSeries命令定义死信队列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。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
M Q通道的维护及常用
命令精选文档
TTMS system office room 【TTMS16H-TTMS2A-TTMS8Q8-
6.3.1通道的状态
下图显示了所有可能的通道状态层次结构,在 MQ for AIX, iSeries, HP-UX, , Solaris, 和 systems, 和 WebSphere MQ for OS/2 Warp平台,这些状态对连接通道也适用。
图,通道状态
如果通道的状态分为inactive和current两大类;“current”可以是Stopped,Starting,Retrying和Active的情况。
通道Acitve的情况又可分为Initializing,Binding,Requesting,Running,Paused或Stopping的状态。
下图显示通道状态之间的变化关系。
注意:
1. 当通道处于INITIALIZING, BINDING, REQUESTING, RUNNING, PAUSED, or或STOPPING状态时,这将消耗系统,并且通道的进程或线程正在运行;因为通道是Active状态。
2. 当通道是STOPPED状态时, 会话可能是active,因为下一个状态时未知的。
通道维护命令
下面将详细地介绍通道有关的维护命令。
创建通道
为创建一个新通道,您需要创建两个通道定义,在通信的双方各定义一个。
这两个通道的名字必须时相同的,而且两端的通道类型必须匹配,例如:发送和接收。
可以使用MQSC命令“DEFINE CHANNEL”来创建通道,在命令中需要指定通道名,通道类型,连接名,通道描述(可选),传输队列名(可选)和传输协议,等还有许多可选的属性可以设置。
注意:
建议在WebSphere MQ的网络中所有的通道名唯一,并且通道名中最好包含了源队列器名和目标队列管理器名。
创建通道的例子
DEFINE CHANNEL CHLTYPE(SDR) +
DESCR(’Sender channel to QM2’) +
CONNAME(QM2) TRPTYPE(TCP) XMITQ(QM2) CONVERT(YES)
I
修改通道
可以使用 MQSC命令“ALTER CHANNEL”来修改现有通道定义,但是通道名和通道类型不能修改。
删除通道
可以使用 MQSC命令“DELETE CHANNEL”来删除现有通道定义。
查看通道定义
可以使用 MQSC命令“DISPLAY CHANNEL”来查看现有通道定义。
可以说明通道名,通道类型(可选),和其它属性,或查看所有的属性。
查看通道定义的例子
DISPLAY CHANNEL TRPTYPE,CONVERT
DISPLAY CHANNEL.*) TRPTYPE,CONVERT
DISPLAY CHANNEL(*) TRPTYPE,CONVERT
DISPLAY CHANNEL ALL
查看通道状态
可以使用 MQSC命令“DISPLAY CHSTATUS”来查看现有通道状态。
显示的通道信息包括:
通道名
通信连接名
通道的In-doubt状态
上一个消息序号
传输队列名
in-doubt 标识
上一个提交消息序号
逻辑工作单元标识
进程ID
线程 ID (仅OS/2 和 Windows 支持) 查看通道状态的例子
DISPLAY CHSTATUS(*) CURRENT DISPLAY CHSTATUS.*) SAVED
Ping 通道
使用MQSC 命令“PING CHANNEL”用固定的数据消息来测试和远端的连接.ping通道并没有使用传输队列和目标队列。
它只是使用了通道定义、通讯链路和网络设置。
只用通道当前状态不是active的情况下才使用它。
这个命令只能在发送通道和服务器通道方使用。
命令返回的结果是“Ping complete”或错误消息。
启动通道
使用MQSC命令“START CHANNEL”启动发送通道、服务器通道和请求器通道。
如果通道是采用触发方式启动,那么不用手工执行启动命令。
当接收通道处在
disabled的状态时,也可以使用“START CHANNEL”命令启动它。
在WebSphere MQ for AIX, iSeries, HP-UX, Linux, Solaris, 和Windows systems, 和WebSphere MQ for Compaq Tru64 , 和 OS/2 Warp,如果服务器连接通道处在disabled状态,也可以使用“START CHANNEL”命令启动它。
启动处在disabled
状态的接收通道或服务器连接通道,即是复位通道和允许通道被远程启动。
当通道被启动时,发送MCA读通道定义文件并打开传输队列,并远程启动相应的接收或服务器通道。
通道启动成功的条件:
1,本地和远端的通道定义必须存在。
2,传输队列必须存在,并且没有其它通道使用它。
3,本地和远程的MCA必须存在。
4,通讯链路必须可用。
5,本地和远程队列管理器必须是处在运行状态。
6,消息通道一定不在运行。
停止通道
使用MQSC命令“STOP CHANNEL”停止通道。
停止通道的命令只能对除客户连接之外的通道进行操作。
停止通道的方式:
静态停止(Stop quiesce)
STOP CHANNEL MODE(QUIESCE)
这种方式将顺序地停止通道,必须完成当前的消息处理并确保事务的一致性。
注意:
如果通道是空闲的,将不终止接收通道。
强制停止(Stop force)
STOP CHANNEL MODE(FORCE)
这种方式立即停止通道,但不终止通道的线程或进程。
通道并没有完成当前的消息处理,因此可能使通道处在可疑的状态。
通常,推荐系统管理员使用静态停止通道。
终止停止(Stop terminate)
STOP CHANNEL MODE(TERMINATE)
这种方式立即停止通道,并终止通道的线程或进程。
复位通道
可以使用MQSC命令“RESET CHANNEL”改变消息序号。
这个命令可以适用于任何消息通道,但不能用在MQI通道(客户连接或服务器连接)。
通道被启动后,将使用新的消息序号。
如果是对发送通道或服务器通道进行复位,当下次通道重新启动时将通知通道的另一方。
Resolve通道
从发送通道或服务器通道使用MQSC命令“RESOLVE CHANNEL”来处理可疑的消息。
“RESOLVE CHANNEL”命令可以接受 BACKOUT 或 COMMIT参数,Backout将把可疑消息恢复到传输队列,而Commit将丢弃可疑消息。
设置MaxChannels和MaxActiveChannels属性
MaxChannels和MaxActiveChannels分别代表队列管理器允许配置的通道的最大个数和允许同时运行的通道的个数,MaxChannels的缺省值是100,MaxActiveChannels的缺省值与MaxChannels相同。
如果您的并发通道连接个数超
过了100,您需要修改这两个参数。
这对于大并发的Client/Server间通讯尤为重要。
例如,在unix平台,修改文件如下所示:
CHANNELS:
MaxChannels = 200 ; Maximum number of Channels allowed.
MaxActiveChannels = 150 ; Maximum number of Channels allowed to be ; active at any time.。