Windows 安装 RabbitMQ 保姆级教程

前言

RabbitMQ 是一款基于 Erlang 语言开发的开源消息代理软件,广泛应用于分布式系统中的异步消息传递。它支持多种消息协议(如 AMQP、MQTT、STOMP),提供灵活的路由策略和高可用性设计,是微服务架构中的重要基础设施组件。

在 Windows 环境下安装 RabbitMQ 时,新手往往会遇到 Erlang 版本兼容性、环境变量配置、管理插件启用等一系列问题。本文将手把手带你完成从依赖安装到验证可用的全流程,并解答常见的安装陷阱。

一、准备工作

1.1 系统要求

  • 操作系统:Windows 7/8/10/11(64位推荐)
  • 内存要求:至少 2GB 可用内存
  • 权限要求:管理员权限(安装过程中必须以管理员身份运行)
  • 依赖组件:64位 Erlang/OTP 运行环境

1.2 版本兼容性说明

RabbitMQ 对 Erlang 版本有严格要求,版本不匹配会导致服务启动失败。以下是官方最新兼容性矩阵(截至2026年):

RabbitMQ 版本最低要求 Erlang/OTP最高支持 Erlang/OTP备注
4.2.026.227.xErlang 28 部分支持
4.1.x26.227.x不支持 Erlang 28
4.0.x26.227.x4.0.4+ 支持 Erlang 27
3.13.x2626.2.x稳定版本系列
3.12.x2526.1.x企业常用版本

推荐组合:RabbitMQ 3.12.x + Erlang 25.x(最稳定,适用于生产环境)

二、安装 Erlang

2.1 下载 Erlang

  1. 访问 Erlang 官网:https://www.erlang.org/downloads
  2. 点击 “Download Windows installer” 下载安装包

2.2 安装 Erlang

  1. 右键点击下载的安装包,选择**“以管理员身份运行”**
  2. 点击 “Next” 开始安装
  3. 选择安装路径(建议使用默认路径:C:\Program Files\erl{version}
    • 重要提示:安装路径只能包含 ASCII 字符,严禁包含空格或中文
  4. 点击 “Install” 开始安装
  5. 如果系统提示缺少 Visual C++ 组件,按提示安装即可

2.3 配置 Erlang 环境变量

  1. 右键点击 “此电脑” → “属性” → “高级系统设置” → “环境变量”
  2. 在 “系统变量” 区域进行以下操作:(1)配置 ERLANG_HOME(2)配置 Path
    • 点击 “新建”,变量名为 ERLANG_HOME
    • 变量值为 Erlang 安装目录,例如:C:\Program Files\erl26.2
    • 找到 “Path” 变量,点击 “编辑”
    • 点击 “新建”,添加:%ERLANG_HOME%\bin
  3. 点击 “确定” 保存所有设置

2.4 验证 Erlang 安装

重要:必须关闭之前所有打开的命令提示符窗口,重新打开一个新的 CMD 或 PowerShell 窗口。

输入以下命令:

erl -version 

如果显示 Erlang 版本信息(如 Erlang/OTP 26 [erts-14.0.2]),说明安装成功。

三、下载 RabbitMQ

  1. 访问 RabbitMQ 官网:https://www.rabbitmq.com/download.html
  2. 找到 “Windows” 部分,点击 “Windows Installer”
  3. 在跳转的页面中找到 “Direct Downloads” 区域
  4. 点击下载 rabbitmq-server-{version}.exe(建议下载 3.12.x 或 4.0.x 稳定版本)

四、安装 RabbitMQ

4.1 运行安装程序

右键点击下载的 RabbitMQ 安装包,选择**“以管理员身份运行”**。

4.2 安装过程

  1. 点击 “Next” 开始安装向导
  2. 选择安装路径(建议使用默认路径:C:\Program Files\RabbitMQ Server
    • 关键点:路径必须使用 ASCII 字符,避免空格和中文字符
  3. 点击 “Install” 开始安装

4.3 安装完成

安装完成后,RabbitMQ 服务会自动启动并注册为 Windows 服务。

4.4 配置 RabbitMQ 环境变量

虽然不是强制要求,但配置环境变量可以方便后续命令行操作。

  1. 打开环境变量设置:
    • 在 “系统变量” 中找到 “Path” 变量,点击 “编辑”
    • 点击 “新建”,添加 sbin 目录路径
  2. 保存设置

找到 RabbitMQ 安装路径下的 sbin 目录,例如:

C:\Program Files\RabbitMQ Server\rabbitmq_server-3.12.x\sbin 

4.5 验证 RabbitMQ 安装

关闭所有命令提示符窗口,以管理员身份重新打开新的 CMD 窗口。

输入以下命令:

rabbitmq-plugins 

如果配置正确,应该显示插件管理的帮助信息。

五、验证服务状态

5.1 检查 Windows 服务

  1. Win + R 打开运行对话框
  2. 输入 services.msc 并回车
  3. 在服务列表中找到 “RabbitMQ” 服务
  4. 确认服务状态为 “正在运行”

如果服务未运行,可以右键点击服务 → “启动”

5.2 使用命令行检查服务

在管理员权限的命令提示符中输入:

rabbitmqctl.bat status 

正常情况下会显示 RabbitMQ 节点的详细信息。

六、启用 Web 管理界面

RabbitMQ 默认不启用管理界面,需要手动启用 rabbitmq_management 插件。

6.1 启用管理插件

以管理员身份打开命令提示符,输入:

rabbitmq-plugins enable rabbitmq_management 

输出示例:

The following plugins have been configured: rabbitmq_management rabbitmq_management_agent rabbitmq_web_dispatch Applying plugin configuration to rabbit@localhost... Plugin configuration unchanged. 

6.2 访问管理界面

  1. 打开浏览器,访问:http://localhost:15672
  2. 默认用户名和密码均为:guest / guest

注意guest 用户默认只能从本地(localhost)访问。如果需要远程访问,必须创建新用户。

6.3 管理界面概览

登录成功后,你将看到 RabbitMQ 的管理控制台,主要包含以下模块:

  • Overview:总览信息,包括消息速率、队列状态、连接数等
  • Connections:客户端连接列表
  • Channels:通道管理
  • Exchanges:交换机管理
  • Queues:队列管理
  • Admin:用户和权限管理

七、创建管理用户(推荐)

为了安全起见,建议创建新用户并禁用或限制 guest 用户。

7.1 创建新用户

在命令提示符中执行:

# 创建用户 rabbitmqctl.bat add_user admin your_strong_password # 设置用户标签为管理员 rabbitmqctl.bat set_user_tags admin administrator # 授予所有权限 rabbitmqctl.bat set_permissions -p / admin ".*"".*"".*"

7.2 使用新用户登录

  1. 退出当前 guest 用户会话
  2. 使用新创建的 admin 用户登录管理界面

八、常见问题排查

8.1 Erlang 环境未正确配置

错误现象erlang not found 或服务启动失败

解决方法

  1. 确认 Erlang 已安装:erl -version
  2. 检查 ERLANG_HOME 环境变量是否正确
  3. 检查 Path 中是否包含 %ERLANG_HOME%\bin
  4. 重启命令提示符窗口使环境变量生效
  5. 确认 Erlang 版本与 RabbitMQ 版本兼容(参考版本兼容性矩阵)

8.2 RabbitMQ 服务无法启动

可能原因

  • Erlang 版本不兼容
  • 安装路径包含非 ASCII 字符
  • 未以管理员权限安装

排查步骤

  1. 查看 Windows 事件查看器中的应用程序日志
  2. 检查 RabbitMQ 日志文件位置:%APPDATA%\RabbitMQ\log
  3. 确认是否只安装了一个 Erlang 版本(多版本共存会导致冲突)

8.3 管理界面无法访问

排查清单

  • 确认 rabbitmq_management 插件已启用:rabbitmq-plugins list | findstr management
  • 检查防火墙是否放行 15672 端口
  • 确认服务正在运行:rabbitmqctl.bat status
  • 尝试使用 http://127.0.0.1:15672 而不是 localhost

8.4 远程访问被拒绝

问题guest 用户只能从本地访问

解决方法:按照第七节创建新用户并设置相应权限。

8.5 命令行工具报错 “Authentication failed”

原因:Erlang cookie 文件位置不匹配

解决方法

  1. 如果使用非管理员账户安装 RabbitMQ,需要手动复制 .erlang.cookie 文件
  2. %SystemRoot%\system32\config\systemprofile\.erlang.cookie 复制到 %HOMEDRIVE%%HOMEPATH%\.erlang.cookie
  3. 或者以管理员身份重新安装 RabbitMQ

九、常用端口说明

端口用途说明
5672AMQP 通信端口客户端连接主端口
5671AMQP over TLS加密通信端口
15672Web 管理界面HTTP API 和 UI
25672Erlang 分布式通信集群节点间通信
61613STOMP 协议端口需启用 stomp 插件
1883MQTT 协议端口需启用 mqtt 插件

防火墙配置:生产环境需要根据实际使用的协议开放相应端口。

十、卸载 RabbitMQ

如需卸载 RabbitMQ,请按以下顺序操作:

  1. 停止 RabbitMQ 服务
  2. 通过 “控制面板” → “程序和功能” 卸载 RabbitMQ
  3. 删除环境变量中的 RabbitMQ 配置
  4. 删除残留数据目录:%APPDATA%\RabbitMQ
  5. (可选)卸载 Erlang

总结

本文详细介绍了在 Windows 系统上安装 RabbitMQ 的完整流程,包括:

  • Erlang 环境的下载、安装和环境变量配置
  • RabbitMQ 服务器的安装和验证
  • Web 管理界面的启用和访问
  • 用户权限的配置
  • 常见问题的排查方法

在整个安装过程中,请务必注意以下几点:

  1. 必须以管理员权限运行所有安装程序
  2. 严格遵循版本兼容性要求,确保 Erlang 和 RabbitMQ 版本匹配
  3. 安装路径避免空格和中文字符,使用纯 ASCII 路径
  4. 环境变量配置后要重启命令提示符窗口
  5. 生产环境建议创建专用管理用户,不要使用默认的 guest 账户

完成安装后,你可以通过 Web 管理界面(http://localhost:15672)方便地管理队列、交换机、用户和权限,为后续在分布式系统中使用消息队列功能打下坚实基础。

下一步建议学习 RabbitMQ 的核心概念(Exchange、Queue、Binding、Routing Key)以及与 Spring Boot 等框架的集成使用。


参考资料

  • RabbitMQ 官方文档:https://www.rabbitmq.com/docs
  • Erlang 官方下载页面:https://www.erlang.org/downloads
  • RabbitMQ 版本兼容性矩阵:https://www.rabbitmq.com/docs/which-erlang

Read more

优雅终结启动顺序噩梦:ObjectProvider —— Spring 4.3 开始引入

优雅终结启动顺序噩梦:ObjectProvider —— Spring 4.3 开始引入

🧑 博主简介:ZEEKLOG博客专家,「历代文学网」(PC端可以访问:https://lidaiwenxue.com/#/?__c=1000,移动端可关注公众号 “ 心海云图 ” 微信小程序搜索“历代文学”)总架构师,首席架构师,也是联合创始人!16年工作经验,精通Java编程,高并发设计,分布式系统架构设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分享所学,希望通过我的实践经历和见解,启发他人的创新思维。在这里,我希望能与志同道合的朋友交流探讨,共同进步,一起在技术的世界里不断学习成长。 🤝商务合作:请搜索或扫码关注微信公众号 “ 心海云图 ” 优雅终结启动顺序噩梦:ObjectProvider —— Spring 4.3 开始引入 从“饥渴式依赖”到“按需获取”,一次依赖注入的思想跃迁 缘起:一个再普通不过的配置类,为何启动就报错?

By Ne0inhk
【Vue3】超完整的 Vue3 开发环境搭建教程(node.js+VS code+Vite)

【Vue3】超完整的 Vue3 开发环境搭建教程(node.js+VS code+Vite)

文章目录 * 一、安装 Node.js * 1. 下载Node.js * 2. 安装Node.js * 3. 验证 Node.js 和 npm 安装 * 4. 安装其他包管理器 * 二、安装VS code * 1. 下载 VS Code * 2. 安装以下必需插件 * 三、使用 Vite 搭建 Vue3 项目(官方推荐) * 四、服务运行发布 * 1. 项目组建 * 2. 本地运行 * 3. 外部服务器发布 * 五、项目标准结构 * 🎯 关键文件说明 * 1. 入口文件 (`main.

By Ne0inhk

Windows 环境下使用 Docker 部署 Java 开发中间件完全指南

本文旨在为 Windows 平台上的 Java 开发者提供一份详细的 Docker 中间件部署指南,涵盖从环境搭建到常用中间件部署的完整流程。 一、环境准备:在 Windows 上安装 Docker 1.1 系统要求检查 在开始之前,请确保你的系统满足以下要求: * Windows 10/11 64位(专业版、企业版或教育版) * 至少 4GB 内存(建议 8GB 或以上) * 开启 BIOS 中的虚拟化支持(VT-x/AMD-V) 1.2 安装 Docker Desktop Docker Desktop 是 Windows 上运行 Docker 的最佳选择,它提供了完整的 Docker

By Ne0inhk

【数据库】KingbaseES数据库智能SQL防护机制,实现99.99%异常语句精准拦截

文章目录 * 前言 * 一、注入风险:隐藏在输入背后的隐患 * 二、三种模式:构建灵活的“智能准入系统” * 三、高效、精准、易用:理想的安全防护标准 * 1. 99.99%的识别准确率,近乎“零误判” * 2. 性能损耗低于6%,业务无感知 * 3. 两步配置,轻松上手 * 四、结语 前言 在数字化转型的深水区,数据已成为企业发展的核心引擎。然而,恶意代码注入攻击如同潜伏的隐患,时刻威胁着数据库系统的稳定。即便开发团队严格遵循预编译、输入过滤等最佳实践,遗留代码、第三方组件的潜在风险或人为疏忽仍可能留下安全缺口。面对这一挑战,被动修补已不足以应对,我们需要更主动的防御策略。 KingbaseES内置的智能SQL防护机制,提供了一种从数据库内核层构建的主动防御方案。它让异常语句无处遁形,帮助安全团队从“事后补救”转向“事前预防”,真正实现“规则先行”

By Ne0inhk