(T_T),不小心删掉RabbitMQ配置文件数据库及如何恢复

一、不小心删除

今天是2025年5月15日,非常沉重的一天,就在今早8点左右的时候我打算继续做我的毕业设计,由于开机的过程十分缓慢(之前没有),加上刚开机电脑有卡死的迹象,再加上昨天晚上关电脑前提醒我电脑内存不足,我打开我的电脑一看,C、D、E盘全爆红,我一想我好久没请电脑内存了,我打算重启后,给我的电脑来一次大扫除---------于是就有了这篇文章。

   我先用了之前用的又跟着B站一个清理C盘的视频给我的电脑清了清,删了些东西,为我的电脑清理出一些小空间,这是清理后---

二、问题

清完内存的我还沉浸在电脑右变流畅的后的喜悦里,丝毫没意识到问题的严重性,就在我运行项目后发现我IDEA报错了!!!!!!

出现问题如下:

2025-05-15T17:20:25.015+08:00 ERROR 29120 --- [Container#0-400] o.s.a.r.l.SimpleMessageListenerContainer : Failed to check/redeclare auto-delete queue(s).
2025-05-15T17:20:25.015+08:00  INFO 29120 --- [Container#0-400] o.s.a.r.c.CachingConnectionFactory       : Attempting to connect to: [127.0.0.1:5672]
2025-05-15T17:20:25.023+08:00  WARN 29120 --- [ 127.0.0.1:5672] c.r.c.impl.ForgivingExceptionHandler     : An unexpected connection driver error occurred (Exception message: Connection reset)

 总而言之我的程序链接不上RabbitMQ消息队列了,我就打算按照Rabbit当时的笔记再给配置一下吧

笔记上:

进入rabbitmq安装目录的sbin

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.8.5\sbin>rabbitmq-plugins enable rabbitmq_management

验证rabbitmq是否安装成功

rabbitmqctl status

 但实际上

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.8.5\sbin> rabbitmq-plugins enable rabbitmq_delayed_message_exchange
Enabling plugins on node rabbit@DESKTOP-SIH1AS9:
rabbitmq_delayed_message_exchange
The following plugins have been configured:
  rabbitmq_delayed_message_exchange
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch
Applying plugin configuration to rabbit@DESKTOP-SIH1AS9...
Plugin configuration unchanged.

Error:{:aborted, {:no_exists, :rabbit_vhost}}

三,可能及解决

1.Erlang 环境损坏或配置丢失

RabbitMQ 是基于 Erlang 运行的,清缓存时可能误删了 Erlang 路径或配置,导致启动失败或行为异常

检查 Erlang 是否还在:

  • 路径一般是 C:\Program Files\erl-<版本号>,比如:C:\Program Files\erl-23.3

  • 如果没有,重新安装 Erlang

  • 然后重启电脑

2. RabbitMQ 服务本身的配置文件或数据库被清除

RabbitMQ 默认保存的用户数据位置:

  • %APPDATA%\RabbitMQ

  • %USERPROFILE%\.erlang.cookie

  • %ProgramData%\RabbitMQ

如果 .erlang.cookie 文件被删除或权限变化,RabbitMQ 就无法启动或连接会失败。

解决方法:

检查 .erlang.cookie 文件是否存在和权限正确,确认这几个目录是否还存在。这是 RabbitMQ 启动和节点通信所必需的“密钥”,缺失或权限不对就无法连接,经常被清理工具误删或改权限。

路径:

C:\Users\<你的用户名>\.erlang.cookie

检查方法:

查看是否有一个名为 .erlang.cookie 的文件,是一个无扩展名的文本文件

右键 → 属性 → 安全 → 查看是否你这个用户有“完全控制”权限

使用管理员 PowerShell修改 .erlang.cookie 权限:

1. 打开「管理员 PowerShell」

  • Win 键,输入 powershell

  • 在搜索结果中 右键点击「Windows PowerShell」 → 选择 “以管理员身份运行”

  • 执行权限修改命令:

    依次输入命令:

cd $env:USERPROFILE

icacls .erlang.cookie /grant "${env:USERNAME}:(F)"

  • 如果成功,你会看到类似输出:

    C:\Users\你的用户名\.erlang.cookie: 已成功处理 1 个文件;失败 0 个

现在.erlang.cookie 权限已修复,现在你可以重新尝试启动 RabbitMQ 服务了:

重启 RabbitMQ 服务

打开命令提示符(管理员)或 PowerShell,执行:

net stop RabbitMQ

net start RabbitMQ

浏览器访问: http://localhost:15672

默认账号密码(未修改过)是:

用户名:admin 密码:admin

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值