我是 WebSphere MQ 的初学者,我正在研究 MQ 6,它运行良好,但现在我已经安装了 MQ 7.1,当我尝试创建一个新的队列管理器时,我可以做到但它无法连接并且它给了我以下错误:
你对此有什么想法吗?谢谢 :)
我是 WebSphere MQ 的初学者,我正在研究 MQ 6,它运行良好,但现在我已经安装了 MQ 7.1,当我尝试创建一个新的队列管理器时,我可以做到但它无法连接并且它给了我以下错误:
你对此有什么想法吗?谢谢 :)
如果使用该mqrc
命令安装了 WebSphere MQ 客户端或服务器,您可以查找任何 WebSphere MQ 错误代码。在这种情况下:
C:\Users\MUSR_MQADMIN>mqrc 2059
2059 0x0000080b MQRC_Q_MGR_NOT_AVAILABLE
2059 通常表示侦听器未运行或队列管理器已关闭。如果侦听器正在运行并且 QMgr 名称错误,则会出现不同的错误代码;如果连接到正确的 QMgr 但通道名称错误,则会出现另一个错误代码。如果通道在服务器端通过出口关闭,有时您可以获得 2059,但由于您没有提及任何出口,我假设在这种情况下它的侦听器问题。
希望现在您正在定义一个侦听器对象,而不是使用inetd
或runmqlsr
命令。定义一个对象并将其设置为在 QMgr 控制下启动和停止是配置它的最可靠方法。
一旦超过 2059,您应该知道,从 WMQ V7.1 开始,队列管理器默认是安全的,并且不会接受任何远程客户端连接,除非您明确授权它们。这与 V6 的行为相反,在 V6 中,在新定义的运行侦听器的队列管理器上,任何拥有到它的 TCP 路由的人都可以管理它并以mqm
用户身份远程执行操作系统代码。所以我预计您遇到的下一个问题将是 2035 错误。
我被告知这意味着 WMQ 管理员需要做更多的工作。唯一正确的情况是 V6 或更早版本的队列管理器被配置为没有安全性。如果将保护 V7.0 QMgr 的任务与在 v7.1 和更高版本的 QMgr 上提供访问权限的任务进行比较,则提供访问权限会变得更容易。但是,如果您喜欢 V7.0 的行为,您可以随时更改 QMgr 以禁用CHLAUTH
规则。不用说,高度鼓励启用安全性。
runmqsc
要调试安全错误,请使用命令更改 QMgr 以启用授权事件ALTER QMGR AUTHOREV(ENABLED)
。接下来,下载SupportPac MS0P并将其安装到 WebSphere MQ Explorer 中。然后,当您确实遇到安全错误时,使用 WebSphere MQ Explorer 查看队列。右键单击队列并选择解析事件消息的选项。这将详细地告诉您调试授权错误所需的所有信息。
最后,如果您想了解新的安全功能,请访问t-rob.net/links并查看那里的会议演示文稿。如果向下滚动,也有一些文章被索引。
在屏幕截图中,我看到主机名“127.0.0.1”和端口号 1414。如果它是本地队列管理器,则直接连接到它。
此外,每个队列管理器必须使用唯一的端口号。如果您让它与 WMQ v6 队列管理器一起使用,这是同一个队列管理器吗?如果不是,请确保每个队列管理器使用不同的端口号(即 1415、1416 等...)
我遇到了同样的问题。但我通过以下方式解决了这个问题: 1. 手动创建了一个监听器(定义 lstr(lstr1)端口(xxxx)控件(qmgr) 2. setmqaut mcauser('mqm')。