超全IBM MQ安装运行与代码连接测试

本文详细介绍了在Windows环境下安装IBM MQ的过程,包括安装步骤、创建队列管理器、设置通道和解决常见错误。同时,给出了Springboot客户端连接MQ的配置和测试,帮助开发者理解并成功实现IBM MQ的连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

选择windows安装测试是有必要的,IBM MQ不同于其他MQ,其运行与创建队列管理器很复杂,在打算部署linux之前,建议先把windows下的可视化操作理清,不至于踩坑!

安装 IBM MQ

在这里插入图片描述

网络配置选否,后续可以省去很多麻烦。
创建队列管理器报错:AMQ7252 :MQ服务必须正在运行,就是因为这个原因
在这里插入图片描述
选择启动IBM MQ,进行安装
选择典型只能安装在C盘,选择定制可以自定义文件夹,自定义数据存储
在这里插入图片描述
下一页在这里插入图片描述
选择否,完成安装
在这里插入图片描述
进入可视化页面(或点击MQ资源管理器)
在这里插入图片描述

创建连接信息

创建队列管理器
在这里插入图片描述
在这里插入图片描述
一直下一步,选择创建服务器连接通道
在这里插入图片描述
指定一个监听端口,我们代码连接mq时用的端口,完成创建
在这里插入图片描述
创建通道,必选服务器连接通道
在这里插入图片描述
在这里插入图片描述
通道属性这里要添加MCA,这个用户要是你当前系统登录的用户,且这个用户要属于mqm组,mqm组已经默认给创建好了,我们只需要把用户移到mqm组下即可,win10直接搜索计算机管理,将当前用户添加到mqm组下,注意,如果没有本地用户和组,那么可能你的计算机是win10家庭版,两种方式。1)升级到win10专业版 2)装一个win10的虚拟机(我是这样的)
如果用户不能移到mqm组,后续会报各种错误。
在这里插入图片描述
在这里插入图片描述
创建好通道后,创建一个可以放消息的队列,直接点完成创建
在这里插入图片描述
在进行测试之前,还要再改两个地方,不然会报安全认证不通过的错误
1)通道认证记录这里不让它组织*MQADMIN,随便改个用户即可在这里插入图片描述
2)点击队列管理器,进入属性,选择禁用通道认证记录,这两个地方做完,可以避免报安全认证失败错误
在这里插入图片描述

常见错误

这里列出常见的错误原因码,在之前已经提到过的不再赘述
错误一 Caused by: org.springframework.jms.IllegalStateException: JMSWMQ0018: 连接至队列管理器“QM_007”失败,连接方式为“Client”,主机名为“192.168.8.8(1414)”。; nested exception is com.ibm.mq.MQException: JMSCMQ0001: IBM MQ 调用失败,完成代码为“2”(“MQCC_FAILED”),原因码为“2538”(“MQRC_HOST_NOT_AVAILABLE”)。
解决 没有启动端口侦听器,指定一个可以telnet连通到的端口

错误二 Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2539;AMQ9547: 远程通道的类型不适合于所请求的操作。 [3=C]
解决 需要给通道定义的类型是“服务器连接类型”

错误三 Caused by: nested exception is com.ibm.msg.client.jms.DetailedInvalidDestinationException: JMSWMQ2008: 打开 MQ 队列“MQ_send”失败。
JMS 尝试执行 MQOPEN,但 IBM MQ 报告了错误。
使用链接的异常来确定此错误的原因。 请检查是否正确定义了指定的队列和队列管理器。; nested exception is com.ibm.mq.MQException: JMSCMQ0001: IBM MQ 调用失败,完成代码为“2”(“MQCC_FAILED”),原因码为“2085”(“MQRC_UNKNOWN_OBJECT_NAME”)。
解决 没有在队列管理器里建队列

错误四
MQRC_NOT_AUTHORIZED错误,原因码为“2035”
解决给通道指定MCA用户标识

springboot客户端连接MQ代码

<!--ibm mq-->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-jms</artifactId>
		</dependency>
		<dependency>
			<groupId>javax.jms</groupId>
			<artifactId>javax.jms-api</artifactId>
			<version>2.0.1</version>
		</dependency>
		<dependency>
			<groupId>com.ibm.mq</groupId>
			<artifactId>com.ibm.mq.allclient</artifactId>
			<version>9.1.1.0</version>
		</dependency>
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jms.core.JmsOperations;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;


/**
 * ibm mq 消息发送者
 */
@C
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值