是否有类似于dspmq
的命令来检查远程服务器上的队列管理器状态。
此外,我使用以下命令检查队列管理器上是否存在队列。但是,只有在同一服务器上存在队列时才会执行此命令。
echo 'DISPLAY QLOCAL(*)' | runmqsc -e [queue manager] |grep [queuename]
我卡住了,因为我有一个服务器,其队列托管在不同的服务器上。
当我执行上述命令时,它们会失败。
是否有任何命令可以检查远程服务器上的队列和队列管理器。
答案 0 :(得分:3)
假设您可以建立与远程队列管理器的客户端连接(例如,使用MQSERVER或MQCHLLIB / MQCHLTAB),您可以在v8之后的runmqsc命令上使用客户端模式连接(-c)选项。请在下面的链接中阅读更多相关信息。
那么,例如,您的命令将是: -
export MQSERVER='channel-name/TCP/hostname(port)'
echo 'DISPLAY QLOCAL(queuename)' | runmqsc -c queue-manager
您必须使用自己的值替换channel-name
,hostname
和port
。
注意我已经更改了您引用的示例,将队列名称放在DISPLAY QLOCAL
命令中,除了您之后的grepping,您只需要向队列管理器询问您感兴趣的队列。
或者,如果您的本地和远程队列管理器已连接,并且您具有适当的安全性和定义,则可以使用-w选项将MQSC命令通过本地队列管理器路由到远程队列管理器。在这里阅读更多内容。