本问主要介绍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. 解决@Autowired警告

    在使用spring框架中的依赖注入注解@Autowired时,idea报了一个警告 被警告的代码如下: @Autowired UserDao userDao; 警告提示信息:Field injecti ...

  2. liunx中文件夹不能删除怎么操作

    1.运行rm -rf 文件名称 2.不能删除对应文件并且提示"rm: cannot remove './.user.ini': Operation not permitted" 操 ...

  3. selenium之利用cookie绕过验证登录

    方法一 第一步 2.第二步 方法二.重点:1.打开验证码页(登录页面):2.首次登录等待三十秒手工输入账密:3.保存cookie至excel后利用cookie脚本登录 1.导入第三方模块xlwt 2. ...

  4. .NET 平台系列6 .NET Core 发展历程

    系列目录     [已更新最新开发文章,点击查看详细] 在我的上一篇博客<.NET平台系列5 .NET Core 简介>中主要介绍了.NETCore的基本情况,主要包括.NET跨平台的缘由 ...

  5. 一文读懂 SuperEdge 云边隧道

    作者 李腾飞,腾讯容器技术研发工程师,腾讯云TKE后台研发,SuperEdge核心开发成员. 杜杨浩,腾讯云高级工程师,热衷于开源.容器和Kubernetes.目前主要从事镜像仓库,Kubernete ...

  6. SE_Work3_结队项目

    项目 内容 课程:北航-2020-春-软件工程 博客园班级博客 要求:求交点个数 结对项目作业 班级:005 Sample GitHub地址 intersect 北航网盘地址 SE结队项目 1. PS ...

  7. 面试遇到的坑JS深拷贝和浅拷贝

    首先要搞明白深拷贝和钱拷贝的区别要先搞明白 栈和堆的区别 一.栈 栈存储基础数据类型,如: String.Number.Boolean.Null.Underined,这些简单的基础数据类型能够直接存储 ...

  8. 手写Spring MVC框架(二) 实现访问拦截功能

    前言 在上一篇文章中,我们手写了一个简单的mvc框架,今天我们要实现的功能点是:在Spring MVC框架基础上实现访问拦截功能. 先梳理一下需要实现的功能点: 搭建好Spring MVC基本框架: ...

  9. [bug] HDFS:DataXceiver error processing WRITE_BLOCK operation

    文件格式有误,导致读取错误,我的是把制表符敲成了空格

  10. Zabbix 监控系统部署

    Zabbix 监控系统部署 实验环境 Zabbix server:RHEL8 ip:192.168.121.10 一.关闭防火墙和selinux [root@Zabbix-server ~]# sys ...