本问主要介绍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. redux和mobx入门使用

    redux和mobx入门使用 项目涉及技术 公共插件 create-react-app react-dom react-router react-router-dom react-hook redux ...

  2. Java反射机制以及动态代理

    Java反射机制以及动态代理 Java反射机制 含义与功能 Java的反射(reflection)机制是指在程序的运行状态中,可以构造任意一个类的对象,可以了解任意一个对象所属的类,可以了解任意一个类 ...

  3. 深入探索Android热修复技术原理读书笔记 —— so库热修复技术

    热修复系列文章: 深入探索Android热修复技术原理读书笔记 -- 热修复技术介绍 深入探索Android热修复技术原理读书笔记 -- 代码热修复技术 深入探索Android热修复技术原理读书笔记 ...

  4. 使用 Yarn workspace,TypeScript,esbuild,React 和 Express 构建 K8S 云原生应用(一)

    本文将指导您使用 K8S ,Docker,Yarn workspace ,TypeScript,esbuild,Express 和 React 来设置构建一个基本的云原生 Web 应用程序. 在本教程 ...

  5. 『动善时』JMeter基础 — 22、JMeter中实现参数化(CSV)

    目录 1.参数化的定义 2.什么情况下需要用到参数化 3.JMeter实现参数化的方式 4.CSV数据文件设置界面详细说明 (1)CSV数据文件设置组件界面说明 (2)补充说明:Recycle on ...

  6. 【转载】geany linux python编译器 开源

    http://www.dekiru.cn/?p=1491 Geany 不好用,建议用一些好用的编辑器或ide Subliem Text 或 VS code Pycharm等. 设置运行环境 菜单栏–生 ...

  7. 怎么用优启通安装win7 !!!!好好好20191020

    怎么用优启通安装win7 PE技术探索在国内属于前沿梯队.相关PE工具更新的非常及时,两个月一更新,很赞. 尤其是论坛代表作之一:EasyImageX系统备份恢复镜像工具(集成在PE里面),可以说是用 ...

  8. Docker Swarm(二)常用命令

    # 管理配置文件 docker config     # 查看已创建配置文件     - docker config ls     # 将已有配置文件添加到docker配置文件中     - dock ...

  9. OpenStack平台功能性测试工具Tempest安装

    社区对OpenStack平台功能性的测试工具采用Tempest,性能测试采用Rally. 1.什么是Tempest tempest├── api # API的测试集├── cli # OpenStac ...

  10. python基础之面向对象(二)(封装、继承、多态)

    一.封装 (1)封装是面向对象的一大特点 (2)面向对象编程的第一步--将属性和方法封装到一个抽象的类当中 (3)外界使用类创建对象,然后让对象调用方法 (4)对象方法的细节都被封装在类的内部 1.案 ...