reply-code=530, reply-text=NOT_ALLOWED - vhost / not found, class-id=10, method-id=40

springboot 项目在启动项目时,报链接rabbitmq报错

Caused by: com.rabbitmq.client.ShutdownSignalException: connection error; protocol method: #method<connection.close>(reply-code=530, reply-text=NOT_ALLOWED - vhost / not found, class-id=10, method-id=40)
 at com.rabbitmq.utility.ValueOrException.getValue(ValueOrException.java:66) ~[amqp-client-5.4.3.jar:5.4.3]
 at com.rabbitmq.utility.BlockingValueOrException.uninterruptibleGetValue(BlockingValueOrException.java:36) ~[amqp-client-5.4.3.jar:5.4.3]
 at com.rabbitmq.client.impl.AMQChannel$BlockingRpcContinuation.getReply(AMQChannel.java:494) ~[amqp-client-5.4.3.jar:5.4.3]
 at com.rabbitmq.client.impl.AMQChannel.privateRpc(AMQChannel.java:288) ~[amqp-client-5.4.3.jar:5.4.3]
 at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:138) ~[amqp-client-5.4.3.jar:5.4.3]
 ... 15 common frames omitted

通过 Caused by 可以定位 vhost 名称没找到

  1. 处理方式一(推荐)
    在 application.properties 文件中添加 spring.rabbitmq.virtual-host=my_vhost
  2. 处理方式二(推荐)
    在 rabbitmq 管理后天中添加 my_vhost 目录
  3. 处理方式三
    在启动docker时指定vhost : RABBITMQ_DEFAULT_VHOST=my_vhost
docker run -d --name rabbitmq3.8.2-management-alpine -p 5672:5672 -p 15672:15672 --hostname myRabbit -e RABBITMQ_DEFAULT_VHOST=my_vhost  -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=123456 27676558455e
  • 5
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
这个异常(`ShutdownSignalException`)表示连接到RabbitMQ服务器时出现了错误。根据异常信息,显示了以下错误消息: ``` NOT_ALLOWED - vhost /vh_mnr not found ``` 这意味着RabbitMQ服务器上不存在名为 `/vh_mnr` 的虚拟主机。虚拟主机是RabbitMQ中的一个概念,用于逻辑上隔离不同的应用程序或服务。 要解决此问题,你可以执行以下步骤: 1. 确保你提供的虚拟主机名称是正确的。检查代码中的连接工厂配置,确保虚拟主机名称正确。 2. 检查RabbitMQ服务器上是否存在相应的虚拟主机。你可以使用RabbitMQ管理界面或命令行工具来验证虚拟主机的存在。 - 管理界面:在浏览器中打开RabbitMQ管理界面(通常是 `http://localhost:15672`),登录并导航到 "Admin" 部分。在 "Virtual Hosts" 页面上,确认是否存在 `/vh_mnr` 虚拟主机。 - 命令行工具:使用命令行工具 `rabbitmqctl` 来列出虚拟主机。运行以下命令检查是否存在 `/vh_mnr` 虚拟主机: ``` rabbitmqctl list_vhosts ``` 3. 如果虚拟主机不存在,你可以通过以下两种方式解决: - 创建虚拟主机:在RabbitMQ管理界面上创建一个新的虚拟主机,或使用命令行工具 `rabbitmqctl` 创建虚拟主机。 - 更改代码中的虚拟主机名称:如果你希望连接到现有的虚拟主机,确保代码中提供的虚拟主机名称正确。 请根据你的实际情况检查并调整虚拟主机的配置,以解决这个问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值