rabbitmqctl使用

学习rabbitmq,原理之后第一个要掌握的就是rabbitmqctl这个命令的用法了,rabbitmq的管理功能最全的就是rabbitmqctl命令了,当然还有HTTP API和UI两种管理手段。

rabbitmqctl的使用方法:

rabbitmqctl [-n <node>] [-q] <command> [<command options>]
-n node 默认node名称是"rabbit@server",如果你的主机明是'server.example.com',那么node名称是'rabbit@server'。
-q 安静输出模式,信息会被禁止输出

Commands:

基本的管理功能

stop [<pid_file>]
#停止在erlang node上运行的rabbitmq,会使rabbitmq停止
stop_app
#停止erlang node上的rabbitmq的应用,但是erlang node还是会继续运行的
start_app
#启动erlan node上的rabbitmq的应用
wait <pid_file>
#等待rabbitmq服务启动
reset
#初始化node状态,会从集群中删除该节点,从管理数据库中删除所有数据,例如vhosts等等。在初始化之前rabbitmq的应用必须先停止
force_reset
#无条件的初始化node状态
rotate_logs <suffix>
#轮转日志文件

cluster管理

join_cluster <clusternode> [--ram]
#clusternode表示node名称,--ram表示node以ram node加入集群中。默认node以disc node加入集群,在一个node加入cluster之前,必须先停止该node的rabbitmq应用,即先执行stop_app。
cluster_status
#显示cluster中的所有node
change_cluster_node_type disc | ram
#改变一个cluster中node的模式,该节点在转换前必须先停止,不能把一个集群中唯一的disk node转化为ram node
forget_cluster_node [--offline]
#远程移除cluster中的一个node,前提是该node必须处于offline状态,如果是online状态,则需要加--offline参数。
update_cluster_nodes clusternode
#
sync_queue queue
#同步镜像队列
cancel_sync_queue queue

用户管理

add_user <username> <password>
#在rabbitmq的内部数据库添加用户
delete_user <username>
#删除一个用户
change_password <username> <newpassword>
#改变用户密码 \\改变web管理登陆密码
clear_password <username>
#清除用户密码,禁止用户登录
set_user_tags <username> <tag> ...
#设置用户tags
list_users
#列出用户
add_vhost <vhostpath>
#创建一个vhosts
delete_vhost <vhostpath>
#删除一个vhosts
list_vhosts [<vhostinfoitem> ...]
#列出vhosts
set_permissions [-p <vhostpath>] <user> <conf> <write> <read>
#针对一个vhosts 给用户赋予相关权限
clear_permissions [-p <vhostpath>] <username>
#清除一个用户对vhosts的权限
list_permissions [-p <vhostpath>]
#列出哪些用户可以访问该vhosts
list_user_permissions <username>
#列出该用户的访问权限
set_parameter [-p <vhostpath>] <component_name> <name> <value>
#
clear_parameter [-p <vhostpath>] <component_name> <key>
#
list_parameters [-p <vhostpath>]
#

policy管理,策略用来控制和修改queues和exchange在集群中的行为,策略可以应用到vhost

set_policy [-p <vhostpath>] [--priority <priority>] [--apply-to <apply-to>]
<name> <pattern> <definition>
#name 策略名称,pattern 正则表达式,用来匹配资源,符合的就会应用设置的策略,apply-to 表示策略应用到什么类型的地方,一般有queues、exchange和all,默认是all。priority 是个整数优先级,definition 是json格式设置的策略。
clear_policy [-p <vhostpath>] <name>
#清除一个策略
list_policies [-p <vhostpath>]
#列出已有的策略

queues && exchange状态信息

list_queues [-p <vhostpath>] [<queueinfoitem> ...]
#返回queue的信息,如果省略了-p参数,则默认显示的是"/"vhosts的信息。
list_exchanges [-p <vhostpath>] [<exchangeinfoitem> ...]
#返回exchange的信息。
list_bindings [-p <vhostpath>] [<bindinginfoitem> ...]
#返回绑定信息。
list_connections [<connectioninfoitem> ...]
#返回链接信息。
list_channels [<channelinfoitem> ...]
#返回目前所有的channels。
list_consumers [-p <vhostpath>]
#返回consumers,
status
#显示broker的状态
environment
#显示环境参数的信息
report
#返回一个服务状态report,
eval <expr>

rabbitmq支持各种插件,开启插件可以使用rabbitmq-plugins命令

插件的开启和关闭方法

rabbitmq-plugins <command> [<command options>]
Commands:
list [-v] [-m] [-E] [-e] [<pattern>] 显示所有的的插件。-v 显示版本 -m 显示名称 -E 显示明确已经开启的 -e显示明确的和暗中开启的
enable <plugin> ... 开启一个插件
disable <plugin> ... 关闭一个插件

在debian/ubuntu下插件一般安装路径:/usr/lib/rabbitmq/lib/rabbitmq_server-3.2.2/plugins

开启:rabbitmq-plugins enable rabbitmq_management

rabbitmq_management提供一个基于HTTP的API接口,来管理和监控你的rabbitmq。他有web方式和CLI方式,其实web方式是在后端调用HTTP api

rabbitmq_management插件的用法:

web http://host:15672/
api http://host:15672/api/
cli http://host:15672/cli


												

rabbitmq学习之路-rabbitmqctl的更多相关文章

  1. RabbitMQ学习总结 第三篇:工作队列Work Queue

    目录 RabbitMQ学习总结 第一篇:理论篇 RabbitMQ学习总结 第二篇:快速入门HelloWorld RabbitMQ学习总结 第三篇:工作队列Work Queue RabbitMQ学习总结 ...

  2. RabbitMQ学习总结 第二篇:快速入门HelloWorld

    目录 RabbitMQ学习总结 第一篇:理论篇 RabbitMQ学习总结 第二篇:快速入门HelloWorld RabbitMQ学习总结 第三篇:工作队列Work Queue RabbitMQ学习总结 ...

  3. RabbitMQ学习总结 第四篇:发布/订阅 Publish/Subscribe

    目录 RabbitMQ学习总结 第一篇:理论篇 RabbitMQ学习总结 第二篇:快速入门HelloWorld RabbitMQ学习总结 第三篇:工作队列Work Queue RabbitMQ学习总结 ...

  4. RabbitMQ学习系列一安装RabbitMQ服务

    RabbitMQ学习系列一:windows下安装RabbitMQ服务 http://www.80iter.com/blog/1437026462550244 Rabbit MQ 是建立在强大的Erla ...

  5. Redis总结(五)缓存雪崩和缓存穿透等问题 Web API系列(三)统一异常处理 C#总结(一)AutoResetEvent的使用介绍(用AutoResetEvent实现同步) C#总结(二)事件Event 介绍总结 C#总结(三)DataGridView增加全选列 Web API系列(二)接口安全和参数校验 RabbitMQ学习系列(六): RabbitMQ 高可用集群

    Redis总结(五)缓存雪崩和缓存穿透等问题   前面讲过一些redis 缓存的使用和数据持久化.感兴趣的朋友可以看看之前的文章,http://www.cnblogs.com/zhangweizhon ...

  6. 官网英文版学习——RabbitMQ学习笔记(十)RabbitMQ集群

    在第二节我们进行了RabbitMQ的安装,现在我们就RabbitMQ进行集群的搭建进行学习,参考官网地址是:http://www.rabbitmq.com/clustering.html 首先我们来看 ...

  7. 官网英文版学习——RabbitMQ学习笔记(二)RabbitMQ安装

    一.安装RabbitMQ的依赖Erlang 要进行RabbitMQ学习,首先需要进行RabbitMQ服务的安装,安装我们可以根据官网指导进行http://www.rabbitmq.com/downlo ...

  8. 官网英文版学习——RabbitMQ学习笔记(一)认识RabbitMQ

    鉴于目前中文的RabbitMQ教程很缺,本博主虽然买了一本rabbitMQ的书,遗憾的是该书的代码用的不是java语言,看起来也有些不爽,且网友们不同人学习所写不同,本博主看的有些地方不太理想,为此本 ...

  9. 消息队列之rabbitmq学习使用

    消息队列之rabbitmq学习使用 1.RabbitMQ简介 1.1.什么是RabbitMQ? RabbitMQ是一个开源的消息代理和队列服务器,用来通过普通协议在完全不同的应用之间共享数据,Rabb ...

随机推荐

  1. 【转】Elastic日报 第576期 (2019-04-05)

    1.Elasticsearch性能测试实践http://t.cn/EiRzFiI2.监控Elasticsearch的插件推荐http://t.cn/EiRzFix3.支持机器数据的可扩展Elastic ...

  2. 大数据测试之ETL测试工具和面试常见的问题及答案

    转载自: http://www.51testing.com/html/87/n-3722487.html 概述 商业信息和数据对于任何一个企业而言都是至关重要的.现在很多公司都投入了大量的人力.资金和 ...

  3. HDU 2722 Here We Go(relians) Again (最短路)

    题目链接 Problem Description The Gorelians are a warlike race that travel the universe conquering new wo ...

  4. select标签的描述

    1.标签html与js如下代码 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"&g ...

  5. 20、List集合中特有的方法

    List里面的特有方法简介 List中除了Collection里面的方法以外,内部还有一些方法,通过这些方法,开发者可以更方便的操作List接口的实现类. package com.monkey1024 ...

  6. UNIX网络编程 第5章 TCP客户/服务器程序示例

    UNIX网络编程 第5章 TCP客户/服务器程序示例

  7. Dream------scala--开发环境搭建

    scala简介: scala是一门函数式编程和面向对象编程结合的语言 函数式编程非常擅长数值计算而面向对象特别适合于大型工程或项目的组织以及团队的分工合作 我们借助scala可以非常优雅的构造出各种规 ...

  8. SQL select语句执行顺序

    sql查询原理和Select执行顺序 关键字: 数据库 一 sql语句的执行步骤 1)语法分析,分析语句的语法是否符合规范,衡量语句中各表达式的意义. 2) 语义分析,检查语句中涉及的所有数据库对象是 ...

  9. Print Numbers by Recursion

    Print numbers from 1 to the largest number with N digits by recursion. Notice It's pretty easy to do ...

  10. Ubuntu下安装arm-linux-gnueabi-xxx编译器【转】

    转自:http://blog.csdn.net/real_myth/article/details/51481639 from: http://www.linuxdiyf.com/linux/1948 ...