Linux RabbitMQ 安装及卸载

一、安装

1、前景

RabbitMQ是用Erlang编写的,所以需要先安装Erlang的编译环境

注意

Erlang和RabbitMQ的版本是有一些版本匹配关系的,如果不匹配会导致RabbitMQ无法启动

2、安装Erlang

复制代码
# 下载
wget https://packages.erlang-solutions.com/erlang/rpm/centos/7/x86_64/esl-erlang_23.3.1-1~centos~7_amd64.rpm

# 安装
yum install esl-erlang_23.3.1-1~centos~7_amd64.rpm

# 如果有更高的版本需要覆盖安装使用这条
rpm -ivh esl-erlang_23.3.1-1~centos~7_amd64.rpm --replacefiles

# 检查是否安装成功
erl -version

3.安装RabbitMQ

复制代码
# 安装RabbitMQ密钥
rpm --import https://www.rabbitmq.com/rabbitmq-signing-key-public.asc

# 下载
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.14/rabbitmq-server-3.8.14-1.el7.noarch.rpm

# 安装
yum install rabbitmq-server-3.8.14-1.el7.noarch.rpm

# 配置Web页面
rabbitmq-plugins enable rabbitmq_management

3.1、配置开机启动

复制代码
systemctl enable rabbitmq-server.service

4、启动RabbitMQ

复制代码
# 启动(二选一)
systemctl start rabbitmq-server.service

# 启动(二选一)
/sbin/service rabbitmq-server start

# 查看启动状态
systemctl status rabbitmq-server.service

5、新增用户

复制代码
# 新增用户 admin为用户名  123456为密码
rabbitmqctl add_user admin 123456

# 设置超管权限
rabbitmqctl set_user_tags admin administrator

# 为username设置权限
rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*" 

# 设置完重启服务
systemctl restart rabbitmq-server.service

6、疑难解决

6.1、报错解决

复制代码
rabbitmq-server.service: main process exited, code=exited, status=1/FAILURE

/var/lib/rabbitmq/mnesia 目录下存在rabbit@localhost.pid、rabbit@localhost、rabbit@localhost-plugins-expand,删除这3项

6.2、报错解决

复制代码
file /usr/bin/epmd from install of esl-erlang-25.0.3-1.x86_64 conflicts with file from package erlang-erts-24.3.4.1-1.el7.x86_64

该提示为Erlang和RabbitMQ版本不匹配导致

6.3、重启成功无法访问端口

复制代码
配置阿里云安全组对外开放端口

二、卸载

复制代码
# 停掉rabbitmq服务
service rabbitmq-server stop

# 查看rabbitmq安装的相关列表
yum list | grep rabbitmq

# 卸载rabbitmq已安装的相关内容
yum -y remove rabbitmq-server.noarch

# 查看erlang安装的相关列表
yum list | grep erlang

# 卸载erlang已安装的相关内容
yum -y remove erlang-*
yum remove erlang.x86_64

三、RabbitMQ及Erlang版本匹配

相关推荐
bosins13 分钟前
WSL2 启动即崩溃?调整超时参数解决 Docker 阻塞问题
linux·docker·wsl
web守墓人1 小时前
【goed/ui】自定义组件设计思想篇
linux·windows·ui·golang
kuroomi1 小时前
Ingress-Nginx与kubernetes 网络
linux·运维·网络·kubernetes
daemon.qiang2 小时前
国内虚拟机对接 Freedesktop:Fork xserver、自建 Runner 与提交 MR 实战
linux·ubuntu·centos·gitlab·开源软件
2401_869769593 小时前
linux 权限 指令与权限(重启之后)
linux
码农客栈3 小时前
Linux CAN 驱动
linux·驱动开发
GeW5 小时前
红帽RHCE从挂科边缘到一次过,我做对了什么
linux
时空自由民.5 小时前
WSL解决USB 串口连接问题与linux串口权限问题
linux·单片机
OpenPomeloxCommunity5 小时前
Linux驱动基础(三):firmware的声明与加载
linux·操作系统
云计算练习生5 小时前
什么是系统调用?为什么程序访问硬件必须经过它
linux·windows·操作系统·系统调用·操作系统原理