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版本匹配

相关推荐
天赐学c语言9 小时前
Linux - 网络应用层协议HTTP
linux·c++·网络服务
JiMoKuangXiangQu10 小时前
Linux 锁 (3) - semaphore
linux·semaphore
顶点多余10 小时前
Linux中进程间通信 ---管道篇
linux·运维·服务器
zzzsde10 小时前
【Linux】进程控制(2):进程等待&&进程替换
linux·服务器·网络
longxibo10 小时前
【Ubuntu datasophon1.2.1 二开之八:验证实时数据入湖】
大数据·linux·clickhouse·ubuntu·linq
恋红尘10 小时前
K8S 服务发现-叩丁狼
linux·docker·kubernetes
IMPYLH10 小时前
Linux 的 dd 命令
linux·运维·服务器
minji...10 小时前
Linux 进程间通信(一)进程间通信与匿名管道
linux·运维·服务器·数据结构·数据库·c++
feng_you_ying_li10 小时前
linux的指令终章与权限之用户权限(3)
linux·运维·服务器
&&月弥10 小时前
三大开源消息队列(Kafka、RabbitMQ、RocketMQ)使用教程
kafka·开源·rabbitmq