springboot rabbitmq Failed to check/redeclare auto-delete queue(s).

2022年05月13日 阅读数:3
这篇文章主要向大家介绍springboot rabbitmq Failed to check/redeclare auto-delete queue(s).,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

最后一个最容易被忽略html

出现这种清空有不少种可能,逐个排除。
1、rabbitmq没安装成功,这个没什么好说的,重装
《重装rabbitmq参考连接》
2、服务器防火墙端口未开放5672和15672
开放5672端口web

firewall-cmd --zone=public --add-port=5672/tcp --permanent

开放15672 web管理页面端口spring

firewall-cmd --zone=public --add-port=15672/tcp --permanent

重启防火墙shell

firewall-cmd --reload

3、springboot错误连接rabbitmq端口15672(正确端口是5672)
在这里插入图片描述
4、使用guest默认帐号远程访问。guest只能localhost或者127.0.01及本机ip访问。应建立一个新的帐号供外部访问,受权admin超级管理员权限。

添加用户add_user 用户名 密码springboot

rabbitmqctl add_user admin admin

添加用户角色set_user_tags 用户名 角色名服务器

rabbitmqctl set_user_tags admin administrator

添加用户权限 set_permissions -p “vhost” 用户名 权限tcp

rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"

查看当前用户和角色svg

rabbitmqctl list_users

5、使用的帐号没有权限访问。使用上一步进行对使用的帐号受权。spa

rabbitmqctl set_permissions -p "/" 使用的帐号 ".*" ".*" ".*"

6、springboot设置的virtual-host与rabbitmq设置的virtual hosts不一致
在这里插入图片描述
7、rabbitmq须要使用的插件未安装,代码里面配置了未安装插件参数。(我就是这个,TMD!!)
如:未安装rabbitmq_delayed_message_exchange基于延迟队列的插件,却在代码里面配置了插件参数代码
在这里插入图片描述
rabbitmq管理界面没有该插件参数。
在这里插入图片描述
若是安装了插件,rabbitmq管理界面会有显示。
在这里插入图片描述
《rabbitmq可用插件说明及下载》
安装基于延迟队列的rabbitmq_delayed_message_exchange插件.net

延时队列插件安装(必须把插件放到rabbitmq_server的plugins目录下。如:/usr/local/rabbitmq_server-3.9.16/plugins)

#不要带版本号
rabbitmq-plugins enable rabbitmq_delayed_message_exchange

中止rabbitmq

rabbitmqctl stop

后台启动rabbitmq

rabbitmq-server -detached

在这里插入图片描述