消息中间件RabbitMQ学习笔记---RabbitMQ安装配置和常用命令

消息中间件RabbitMQ学习笔记—RabbitMQ安装配置和常用命令

1.安装RabbitMQ简介

  1. RabbitMQ的安装需要首先安装Erlang,因为它是基于Erlang的VM运行的。
  2. RabbitMQ需要的依赖:socat和logrotate,logrotate操作系统中已经存在了,只需要安装socat就可以了。
  3. RabbitMQ与Erlang的兼容关系详见:https://www.rabbitmq.com/which-erlang.html

2.安装RabbitMQ步骤

  1. 安装依赖:
    yum install socat -y
    
  2. 安装Erlang:
    rpm -ivh erlang-23.0.2-1.el7.x86_64.rpm
    
  3. 安装RabbitMQ:
    rpm -ivh rabbitmq-server-3.8.4-1.el7.noarch.rpm
    
  4. 启用RabbitMQ的管理插件:
    rabbitmq-plugins enable rabbitmq_management
    
  5. 开启RabbitMQ
    systemctl start rabbitmq-server
    
    # 这种启用方式启动完之后前端会卡死
    rabbitmq-server
    # 后台启动
    rabbitmq-server -detached
    
  6. 添加用户
    rabbitmqctl add_user root 123456
    
  7. 给用户添加权限,给root用户在虚拟主机"/"上的配置、写、读的权限
    rabbitmqctl set_permissions root -p / ".*" ".*" ".*"
    
  8. 给用户设置标签
    rabbitmqctl set_user_tags root administrator
    
  9. 用户的标签和权限:
    消息中间件RabbitMQ学习笔记---RabbitMQ安装配置和常用命令_第1张图片

2.RabbitMQ安装命令解释

  1. 安装完RabbitMQ后可以进入sbin文件夹中看到一些可执行文件,其中rabbitmqctl是我们的管理工具,使用他可以对rabbitmq进行一些操作

  2. rabbitmq-defaults:是一些默认的环境配置
    消息中间件RabbitMQ学习笔记---RabbitMQ安装配置和常用命令_第2张图片

  3. 使用rabbit-plugins --help可以看到这个命令的使用方式,如下图 :

  4. 使用rabbitmq-plugins list 查看插件列表,如下图:会发现插件前面有Ee,其中E表示手动启用,e表示依赖启用

  5. 启用插件命令:启动完如下图,下图中红框表示启动插件需要额外启动的东西,都会自动启动

    rabbitmq-plugins enable rabbitmq_management
    

消息中间件RabbitMQ学习笔记---RabbitMQ安装配置和常用命令_第3张图片
6. 使用rabbitmqctl help命令查看rabbitmqctl怎么使用

3.RabbitMQ常用命令

# 前台启动Erlang VM和RabbitMQ 
rabbitmq-server 

# 后台启动 
rabbitmq-server -detached 

# 停止RabbitMQ和Erlang VM 
rabbitmqctl stop 

# 查看所有队列 
rabbitmqctl list_queues 

# 查看所有虚拟主机 
rabbitmqctl list_vhosts 

# 在Erlang VM运行的情况下启动RabbitMQ应用 
rabbitmqctl start_app rabbitmqctl stop_app 

# 查看节点状态 
rabbitmqctl status 

# 查看所有可用的插件 
rabbitmq-plugins list 

# 启用插件 
rabbitmq-plugins enable -name>

# 停用插件
rabbitmq-plugins disable -name> 

# 添加用户 
rabbitmqctl add_user username password 

# 列出所有用户: 
rabbitmqctl list_users 

# 删除用户: 
rabbitmqctl delete_user username 

# 清除用户权限: 
rabbitmqctl clear_permissions -p vhostpath username 

# 列出用户权限: 
rabbitmqctl list_user_permissions username 

# 修改密码: 
rabbitmqctl change_password username newpassword 

# 设置用户权限: 
rabbitmqctl set_permissions -p vhostpath username ".*" ".*" ".*" 

# 创建虚拟主机: 
rabbitmqctl add_vhost vhostpath 

# 列出所以虚拟主机: 
rabbitmqctl list_vhosts 

# 列出虚拟主机上的所有权限: 
rabbitmqctl list_permissions -p vhostpath 

# 删除虚拟主机: 
rabbitmqctl delete_vhost vhost vhostpath 

# 移除所有数据,清空之前设置的所有虚拟主机,要在 rabbitmqctl stop_app 之后使用: 
rabbitmqctl reset

4.RabbitMQ常用命令:rabbitmq-server

  1. 后台启动命令:rabbitmq-server -detached,使用这个命令后使用ps -aux |grep rabbitmq命令查看rabbitmq的进程消息,可以看到如下图红框所示,其中epmderlang port mapper daemon(erlang端口映射程序守护程序)的缩写
  2. 启动rabbitmq的时候要先启动Erlang VM,之后启动rabbitmq-server 之后需要开启端口进行通信,这时候端口就是由下图红框部分的守护进程进行分配,分配完后记录下来,给哪几个应用分配了哪几个端口
  3. 这个守护进程另一个作用是管理端口的作用,负责通信,在集群中拿到另一台rabbitmq的端口进行使用
    在这里插入图片描述
  4. 查看rabbitmq-server的手册,使用命令 man rabbitmq-server可已查看关于rabbitmq的手册内容,包含:名字,环境(rabbitmq存放文件的一些路径),操作
  5. 通过手册了解端口号5672的由来:首先可以知道rabbitmq是AMQP协议的实现,所以说肯定能使用AMQP的客户端来连接进行操作的,所以说AMQP协议的客户端要和服务器走的连接需要的端口号就是5672。
  6. 当我们使用java写的程序,这个程序使用AMQP协议客户端和rabbitmq进行通信的时候端口号要设置成5672

5.RabbitMQ常用命令:查看更细节的命令帮助

  1. 使用命令:rabbitmqctl help "命令",例子如下

    rabbitmqctl help list_queues
    

你可能感兴趣的:(消息队列Mq)