本问主要介绍rabbitmqctl工具的常用命令。

vhost

一个RabbitMQ服务器可以创建多个虚拟的消息服务器,称之为虚拟主机(virtual host),简称为vhost。vhost之间是绝对隔离的,能将同一个RabbitMQ中的客户分开,又能避免队列和交换器等命名冲突。客户端在连接的时候必须制定一个vhost。RabbitMQ默认创建的vhost为“/”。

rabbitmqctl add_vhost {vhost}  创建一个新的vhost

sudo rabbitmqctl list_vhosts  列出所有vhost

rabbitmqctl delete_vhost {vhost} 删除一个vhost

用户

用户是访问控制(Access Control)的基本单元,且单个用户可以跨越多个vhost进行授权。

rabbitmqctl add_user {username} {password}  创建用户

rabbitmqctl change_password {username} {newpassword} 更改指定用户的密码

rabbitmqctl clear_password {username} 清除指定用户密码

rabbitmqctl authenticate_user {username} {password} 验证用户密码

rabbitmqctl delete_user {username}  删除指定用户

rabbitmqctl list_users 列出当前所有用户

可以看到新添加的user1 tags是[],可以调用set_user_tags命令设置用户标签。

rabbitmqctl set_user_tags {username} {tag...}  设置用户角色标签(设置后之前现有的标签都会被删除)

rabbitmq支持的标签有如下:

none:无任何角色。新创建的用户的角色默认为none。

management:可以访问Web管理页面。

policymaker:包含management的所有权限,并且可以管理策略(Policy)和参数(Parameter)。

monitoring:包含management的所有权限,并且可以看到所有连接、信道及节点相关的信息。

administartor:包含monitoring的所有权限,并且可以管理用户、虚拟主机、权限、策略、参数等。administator代表了最高的权限。

权限

为了更好的理解user vhost之间的权限关系,再新增一个vhost(vhost1)。

rabbitmqctl list_user_permissions  {username} 列举权限信息

可以看到mymq账号只有“/”的操作权限

rabbitmqctl set_permissions [-p vhost] {user}{conf}{write}{read}  设置用户在vhost的权限

set_permissions命令参数说明:

vhost:授予用户访问权限的vhost名称,可以设置为默认值,即vhost为“/”。

user:可以访问指定vhost的用户名。

conf:一个用于匹配用户在哪些资源上拥有可配置权限的正则表达式。

write:一个用于匹配用户在哪些资源上拥有可写权限的正则表达式。

read:一个用于匹配用户在哪些资源上拥有可读权限的正则表达式。

注:可配置指的是队列和交换器的创建及删除之类的操作;可写指的是发布消息;可读指与消息有关的操作,包括读取消息及清空整个队列等。

rabbitmqctl list_permissions [-p vhost] 列举vhost权限信息

rabbitmqctl clear_permissions [-p vhost] {username}  清除用户在vhost的权限

其他

rabbitmq-plugins enable [plugin-name]  启动插件

rabbitmq-plugins disable [plugin-name] 关闭插件

如Web插件可以通过rabbitmq-plugins enable rabbitmq_management命令开启。开启之后重启RabbitMQ服务,浏览器访问http://localhost:15672即可打开Web管理插件(第一次可使用默认的guest/guest用户和密码登录)。

rabbitmqctl list_consumers [-p vhost]  列举消费者信息,默认为“/”

rabbitmqctl status 显示Broker的状态

rabbitmqctl node_health_check 对RabbitMQ节点进行健康检查

rabbitmqctl environment  显示每个运行程序环境中每个变量的名称和值。

rabbitmqctl report  为所有服务器状态生成一个服务器状态报告

以上两个命令输出很复杂有机会在细看了。

list_exchanges [-p vhost] 列举交换机信息,默认为“/”

list_queues  [-p vhost]  列举队列信息,默认为“/”

更多应用和集群相关命令可通过 rabbitmqctl  help查看

.Net Redis实战指南——常用命令的更多相关文章

  1. redis 介绍和常用命令

    redis 介绍和常用命令 redis简介 Redis 是一款开源的,基于 BSD 许可的,高级键值 (key-value) 缓存 (cache) 和存储 (store) 系统.由于 Redis 的键 ...

  2. Docker 入门指南——常用命令

    前面已经介绍了 Docker 的安装方式,本文总结一下使用 Docker 的基本概念和常用命令. 基本概念 镜像 Image 镜像是一些打包好的已有的环境,可以被用来启动和创建容器 容器 Contai ...

  3. Redis数据类型和常用命令

    Redis相较于其它的数据库虽然简单,但是要熟记所有命令的用法也并非易事.一个简单的技巧是通过要操作的数据类型来将这些命令进行结构化. 数据类型和对应命令 所有存储于redis中的数据都对应于一个键值 ...

  4. 记录redis安装及常用命令

    Redis安装及常用命令 一.安装 1.下载,解压,进入redis解压目录,make. make PREFIX=目录/redis install :安装到指定目录文件名为redis. 2.将解压目录里 ...

  5. 数据库之redis篇(2)—— redis配置文件,常用命令,性能测试工具

    redis配置 如果你是找网上的其他教程来完成以上操作的话,相信你见过有的启动命令是这样的: 启动命令带了这个参数:redis.windows.conf,由于我测试环境是windows平台,所以是这个 ...

  6. VMWare12安装CentOS7以及redis安装和常用命令

    一.vmware安装centos7后没有网卡 VMWare 12版本不提供32位安装程序,只有64位安装程序,如果在安装CentOS时,选择的是CentOS而不是CentOS 64位,则会出现Cent ...

  7. redis数据类型及常用命令介绍(图文实例)

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAhgAAAFLCAYAAACUdvXUAAAgAElEQVR4nO3da1da58L2fT5KfPvc96 ...

  8. redis笔记总结之redis数据类型及常用命令

    三.常用命令 3.1 字符串类型(string) 字符串类型是Redis中最基本的数据类型,一个字符串类型的键允许存储的数据的最大容量为512MB. 3.1.1 赋值与取值: SET key valu ...

  9. Redis学习笔记--常用命令

    以下为本人学习Redis的备忘录,记录了大部分常用命令 1.客户端连接redis服务端: ===启动Redis服务端 redis-server /yourpath/redis.conf ===启动Re ...

随机推荐

  1. Swift系列三 - 函数

    函数在任何语言中都是存在的,Swift中函数更加灵活. 一.函数的定义 1.1. 有返回值(形参默认是let,也只能是let) func pi() -> Double { return 3.14 ...

  2. Day004 Scanner进阶

    Scanner进阶 例1 Scanner scanner = new Scanner(System.in); //从键盘接收数据 int i = 0; float f = 0.0f; System.o ...

  3. Day002 编译型和解释型语言

    编译型和解释型语言 原文链接 编译型(Compile) 用编译型语言写的程序执行之前,需要一个专门的编译过程,针对特定的平台,使用专门的编译器,把高级语言翻译成机器语言,以后直接运行而不需要再编译了, ...

  4. Docker安装教程(超详细)

    Docker安装教程(超详细) 欢迎关注博主公众号「Java大师」, 专注于分享Java领域干货文章, 关注回复「资源」, 免费领取全网最热的Java架构师学习PDF, 转载请注明出处 http:// ...

  5. CSS&HTML标签

    内容索引: 1. HTML标签:表单标签 2. CSS HTML标签:表单标签 * 表单: * 概念:用于采集用户输入的数据的.用于和服务器进行交互. * form:用于定义表单的.可以定义一个范围, ...

  6. Java_常用类API之一

    Math类 Math类中包含一些对数据进行数学运算的方法,而该类中的方法全都是静态的.像这样的类称之为工具类. 1 public static int abs(int a) 2 对一个数据求绝对值 3 ...

  7. opencv实战——图像矫正算法深入探讨

    摘要 在机器视觉中,对于图像的处理有时候因为放置的原因导致ROI区域倾斜,这个时候我们会想办法把它纠正为正确的角度视角来,方便下一步的布局分析与文字识别,这个时候通过透视变换就可以取得比较好的裁剪效果 ...

  8. [DB] Spark Core (3)

    高级算子 mapPartitionWithIndex:对RDD中每个分区(有下标)进行操作,通过自己定义的一个函数来处理 def mapPartitionsWithIndex[U](f: (Int, ...

  9. [刷题] 75 Sort Colors

    要求 给只有0 1 2三个元素的数组排序 思路 方法1:遍历数组,利用辅助数组保存三个元素的个数,再写入(遍历两遍) 辅助数组有三个元素,对应0 1 2的个数 方法2:模拟三路快排,遍历一遍完成排序 ...

  10. Microk8s 安装helm3

    Microk8s 安装helm3 原本使用官方的命令时这样的.但是使用的是官方的源,网络极不稳定.就出现了下面的状况.解决方法是更改为国内的源. microk8s enable helm3 curl: ...