MQ通道的维护及常用命令

合集下载

常用MQ命令

常用MQ命令

觉得很有参考价值,跟大家分享。
1. 安装好MQ之后,本身MQ会给你提供一些src的sample,有些是非常有用的,前提是你要装sample,可以将那些src的东东按照自己的需求
修改后编译使用,exam(linux):gcc -o destname srcname -lmqm
2. 生产环境的QM由于某种需求,要更换服务器,又要保证在很短的时间内切换完成,那么怎么将原有定义的mq资源导出来,并形成ddl脚本呢?IBM提供了这么一个简单有效的导出工具(里面又各种平台的导出脚本),可以在ibm官方网站上搜索ms03,将它下载下来使用;注意要启动MQ的commandserver
删除队列
DELETE QLOCAL(QNAME)
DELETE QREMOTE(QRNAME)
清除队列中的所有消息
CLEAR QLOCAL(QNAME)
以下是一些高级配置的命令:
amqmcert 配置SSL证书
amqmdain 配置windows上的MQ服务
远程队列定义
DEFINE QREMOTE(QRNAME) +
RNAME(AAA) RQMNAME(QMGRNAME) +
XMITQ(QTNAME)
定义模型队列
DEFINE QMODEL(QNAME) DEFTYPE(TEMPDYN)
定义本地传输队列
DEFINE QLOCAL(QTNAME) USAGE(XMITQ) DEFPSIST(YES) +
其中CHLTYPE可以是:SDR、SVR、RCVR、RQSTR、CLNTCONN、SVRCONN、CLUSSDR和CLUSRCVR。
创建接收方通道

MQ通道的维护及常用命令

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通道的维护及常用命令精选文档

MQ通道的维护及常用命令精选文档

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”来修改现有通道定义,但是通道名和通道类型不能修改。

MQ常用命令

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操作命令

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常用命令

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常用命令

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日常维护文档一. 简介 (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。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

WebShpere MQ入门教程(20):MQ通道的维护
AIXWebsphereHPLinuxOS
6.3.1通道的状态
下图显示了所有可能的通道状态层次结构,在WebSphere MQ for AIX, iSeries, HP-UX, Linux, Solaris, 和Windows systems, 和 WebSphere MQ V5.1 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,因为下一个状态时未知的。

6.3.2通道维护命令
下面将详细地介绍通道有关的维护命令。

创建通道
为创建一个新通道,您需要创建两个通道定义,在通信的双方各定义一个。

这两个通道的名字必须时相同的,而且两端的通道类型必须匹配,例如:发送和接收。

可以使用MQSC命令“DEFINE CHANNEL”来创建通道,在命令中需要指定通道名,通道类型,连接名,通道描述(可选),传输队列名(可选)和传输协议,等还有许多可选的属性可以设置。

注意:
建议在WebSphere MQ的网络中所有的通道名唯一,并且通道名中最好包含了源队列管理器名和目标队列管理器名。

创建通道的例子
DEFINE CHANNEL(QM1.TO.QM2) 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(QM1.TO.QM2) TRPTYPE,CONVERT
DISPLAY CHANNEL(QM1.TO.*) TRPTYPE,CONVERT
DISPLAY CHANNEL(*) TRPTYPE,CONVERT
DISPLAY CHANNEL(QM1.TO.QMR34) ALL
查看通道状态
可以使用 MQSC命令“DISPLAY CHSTATUS”来查看现有通道状态。

显示的通道信息包括:
通道名
通信连接名
通道的In-doubt状态
上一个消息序号
传输队列名
in-doubt 标识
上一个提交消息序号
逻辑工作单元标识
进程ID
线程 ID (仅OS/2 和 Windows 支持)
查看通道状态的例子
DISPLAY CHSTATUS(*) CURRENT
DISPLAY CHSTATUS(QM1.TO.*) 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 V5.1 for Compaq Tru64 UNIX, 和 OS/2 Warp,如果服务器连接通道处在disabled状态,也可以使用“START CHANNEL”命令启动它。

启动处在disabled状态的接收通道或服务器连接通道,即是复位通道和允许通道被远程启动。

当通道被启动时,发送MCA读通道定义文件并打开传输队列,并远程启动相应的接收或服务器通道。

通道启动成功的条件:
1,本地和远端的通道定义必须存在。

2,传输队列必须存在,并且没有其它通道使用它。

3,本地和远程的MCA必须存在。

4,通讯链路必须可用。

5,本地和远程队列管理器必须是处在运行状态。

6,消息通道一定不在运行。

停止通道
使用MQSC命令“STOP CHANNEL”停止通道。

停止通道的命令只能对除客户连接之外的通道进行操作。

停止通道的方式:
静态停止(Stop quiesce)
STOP CHANNEL(QM1.TO.QM2) MODE(QUIESCE)
这种方式将顺序地停止通道,必须完成当前的消息处理并确保事务的一致性。

注意:
如果通道是空闲的,将不终止接收通道。

强制停止(Stop force)
STOP CHANNEL(QM1.TO.QM2) MODE(FORCE)
这种方式立即停止通道,但不终止通道的线程或进程。

通道并没有完成当前的消息处理,因此可能使通道处在可疑的状态。

通常,推荐系统管理员使用静态停止通道。

终止停止(Stop terminate)
STOP CHANNEL(QM1.TO.QM2) MODE(TERMINATE)
这种方式立即停止通道,并终止通道的线程或进程。

复位通道
可以使用MQSC命令“RESET CHANNEL”改变消息序号。

这个命令可以适用于任何消息通道,但不能用在MQI通道(客户连接或服务器连接)。

通道被启动后,将使用新的消息序号。

如果是对发送通道或服务器通道进行复位,当下次通道重新启动时将通知通道的另一方。

Resolve通道
从发送通道或服务器通道使用MQSC命令“RESOLVE CHANNEL”来处理可疑的消息。

“RESOLVE CHANNEL”命令可以接受 BACKOUT 或 COMMIT参数,Backout将把可疑消息恢复到传输队列,而Commit将丢弃可疑消息。

6.3.3设置MaxChannels和MaxActiveChannels属性
MaxChannels和MaxActiveChannels分别代表队列管理器允许配置的通道的最大个数和允许同时运行的通道的个数,MaxChannels的缺省值是100,MaxActiveChannels的缺省值与MaxChannels相同。

如果您的并发通道连接个数超过了100,您需要修改这两个参数。

这对于大并发的Client/Server间通讯尤为重要。

例如,在unix平台,修改qm.ini文件如下所示:
CHANNELS:
MaxChannels = 200 ; Maximum number of Channels allowed.
MaxActiveChannels = 150 ; Maximum number of Channels allowed to be ; active at any time.。

相关文档
最新文档