查找 IBM MQ 队列管理器的端口号

find port number of IBM MQ Queue Manager

我已经使用创建了一个队列管理器 linux 机器

中的这些命令
crtmqm MQ1
strmqm MQ1
runmqsc MQ1

队列管理器创建成功,

我想知道队列管理器 MQ1 运行 在哪个端口上,我尝试了所有可能的方法 netstat -au 以及 ps -ef 命令。它看起来像是 运行 在不同的端口上。我找不到正确的端口号 运行,有人可以帮忙吗?

以 root 身份使用 netstat 和 -p 选项

sudo netstat -nltp
[sudo] password for root: 
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name   
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      1362/dnsmasq        
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1580/sshd           
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1480/cupsd

最后一列给出了 PID 和 'Program name'。如果您是 运行 用户的队列管理器,则不需要 sudo。

默认情况下,新的 IBM MQ 队列管理器在任何端口上都没有侦听器 运行。

新队列管理器上有一个默认的 LISTENER 对象,如下所示:

$echo "dis listener(SYSTEM.DEFAULT.LISTENER.TCP)"|runmqsc MQ1
....
     1 : dis listener(SYSTEM.DEFAULT.LISTENER.TCP)
AMQ8630: Display listener information details.
   LISTENER(SYSTEM.DEFAULT.LISTENER.TCP)   CONTROL(MANUAL)
   TRPTYPE(TCP)                            PORT(0)
   IPADDR( )                               BACKLOG(0)
   DESCR( )                                ALTDATE(yyyy-mm-dd)
   ALTTIME(hh.mm.ss)

如果您要启动此 LISTENER,则 PORT(0) 意味着在默认端口上启动,即 1414

最佳做法是不使用 SYSTEM 对象并创建一个新对象,例如:

DEFINE LISTENER(LISTENER.1414.TCP) TRPTYPE(TCP) PORT(1414) CONTROL(QMGR)

CONTROL(QMGR) 告诉队列管理器在队列管理器启动时启动侦听器,在队列管理器结束时停止它。

您可以使用以下命令手动启动和停止上述侦听器:

START LISTENER(LISTENER.1414.TCP)
STOP  LISTENER(LISTENER.1414.TCP)