如何在IBM websphere MQ中找到之前堵的后来被清理掉的Queue? 5
使用IBMwebsphereMQExplorer查看到堵的Q,然后使用了rfhutilc工具查看Q的详细,不小心Read之后清理掉了,也没有备份,请问如何能找到不小心清理...
使用IBM websphere MQ Explorer查看到堵的Q, 然后使用了rfhutilc工具查看Q的详细,不小心Read之后清理掉了,也没有备份,请问如何能找到不小心清理掉的Q?
展开
2个回答
展开全部
Prepare:假设queue的名字叫做local.queue, queue manager的名字叫做 test.queue.manager,mq安装在/opt/mqm下。
1.先确定queue的长度不是0.
$runmqsc test.queue.manager
dis ql('local.queue') curdepth
2 : dis ql('local.queue') curdepth
AMQ8409: Display Queue details.
QUEUE(local.queue) CURDEPTH(1)
如上所示,queue里面是有一个message的,因为curdepth的长度为1。
2.查看queue的message的内容
第一种方式:使用/opt/mqm/samp/bin/amqsget
第二种方式:使用/opt/mqm/samp/bin/amqsbcg
共同点:
都是在命令后面先跟queue的名字,然后再跟queue manager的名字,如下
/opt/mqm/samp/bin/amqsget local.queue test.queue.manager
区别是:
前者只能查看短长度的message,并且会把message取出(还不是太确定后者);遇到长度稍微长一点的就会发出2080的error code.
$/opt/mqm/samp/bin/amqsget local.queue test.queue.manager
Sample AMQSGET0 start
MQGET ended with reason code 2080
Sample AMQSGET0 end
而后者则没有这个限制;但是amqsbcg显示的message很奇特,连二进制的都同时显示。
1.先确定queue的长度不是0.
$runmqsc test.queue.manager
dis ql('local.queue') curdepth
2 : dis ql('local.queue') curdepth
AMQ8409: Display Queue details.
QUEUE(local.queue) CURDEPTH(1)
如上所示,queue里面是有一个message的,因为curdepth的长度为1。
2.查看queue的message的内容
第一种方式:使用/opt/mqm/samp/bin/amqsget
第二种方式:使用/opt/mqm/samp/bin/amqsbcg
共同点:
都是在命令后面先跟queue的名字,然后再跟queue manager的名字,如下
/opt/mqm/samp/bin/amqsget local.queue test.queue.manager
区别是:
前者只能查看短长度的message,并且会把message取出(还不是太确定后者);遇到长度稍微长一点的就会发出2080的error code.
$/opt/mqm/samp/bin/amqsget local.queue test.queue.manager
Sample AMQSGET0 start
MQGET ended with reason code 2080
Sample AMQSGET0 end
而后者则没有这个限制;但是amqsbcg显示的message很奇特,连二进制的都同时显示。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询