我以前创建了一个简单的websphere客户端,连接到我们客户端的websphere mq服务器 - 它可以工作。
现在,我想用它来测试我自己的webspehere mq服务器(试用版)。 我已经下载了用于Windows的8.0.0.4 websphere MQ服务器,安装它,但现在我遇到了连接它的问题。我尝试了一些东西,根据一些在线教程手动配置所有内容,但后来我尝试了一种更简单的方法,卸载了所有内容并重新安装,并使用了websphere的默认配置工具。
顺利,我可以快速轻松地使用明信片应用程序。 但是,现在我正在尝试通过我自己的客户端访问它(c#,使用IBM客户端库)。 看来我可以连接到监听器。 默认情况下,MQ中创建了两个通道。 S_SomeName和TO_QM_SomeName。 如果我连接到S_SomeName,我会收到错误“2035 MQRC_NOT_AUTHORIZED” - 这似乎是一切正常工作的良好迹象,因为这是一些服务器连接,并且它使用admin用户,默认情况下阻止将其作为客户端访问。 (这就是我的理解。我对此很陌生。)
所以我去尝试TO_QM_SomeName,希望它能让我访问默认制作或由我制作的任何队列。 但现在,我得到错误“2059 MQRC_Q_MGR_NOT_AVAILABLE”或“2539 MQRC_CHANNEL_CONFIG_ERROR” - 我一直在玩库版本/服务器设置,不记得我在哪一个我得到了哪个错误。嗯......我现在有点迷茫。我找不到任何设置来启用某些用户权限或任何使其工作的设置。 我错过了什么?使默认配置也适用于从localhost /网络上的某个地方连接的客户端需要哪些步骤?
答案 0 :(得分:1)
好的,我找到了答案,感谢评论中的建议,以便了解日志。 (我是全新的mq服务器:) 因此,首先要找到日志,这些日志是C:\ ProgramData \ IBM \ MQ \ qmgrs \\错误,而不是程序文件(文档首先指出的是)。 接下来,简单地阅读和分析日志给了我一个关于错误的线索。 我正在访问不正确的通道TO_QM_SomeName(也称为注释)而不是S_SomeName。但是,要访问S_SomeName,我必须将用户/密码组合添加到客户端,或者删除服务器上的用户/密码验证。我选择了第二种选择。 要做到这一点,我必须输入: ALTER AUTHINFO(SYSTEM.DEFAULT.AUTHINFO.IDPWOS)AUTHTYPE(IDPWOS)CHCKCLNT(可选)
REFRESH SECURITY TYPE(CONNAUTH) 在runmqsc程序中,然后在mq资源管理器中删除阻止所有连接的通道中的阻止规则。瞧,我现在可以连接到我的服务器了。感谢您的提示。