RabbitMQ入门教程(一):安装和常用命令
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。
分享一个朋友的人工智能教程。比较通俗易懂,风趣幽默,感兴趣的朋友可以去看看。
一:Mac安装
Mac安装比Windows安装更加方便,也不需要再额外配置Web插件,因为在安装的时候默认已经配置好了
// 在Updating Homebrew...时可能会卡一会,只需要等就行了
// 在安装的过程中可能因为网络问题,可能会有部分会失败,此时只需要载次执行该命令,直到全部成功即可,注意一定要检查一下是否有部分失败,为安全起见,可以多执行几次该命令
brew install rabbitmq
// 配置环境变量,将下面添加到~/.bash_profile中即可
export PATH=$PATH:/usr/local/sbin
// 立即生效
source ~/.bash_profile
// 启动RabbimtMQ服务, 注意安装最新版的不需要再单独安装插件了,默认已经安装过了,可以通过使用参数 -detached 以守护的方式后台运行
rabbitmq-server
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
安装成功后就可以在浏览器上看到如下登录页面, 在地址栏中输入http://localhost:15672/,Username:guest Password:guest, 使用访客账号就可登录进去
二:Windows安装
Windows安装需要先安装Erlang,再安装RabbitMQ,再配置插件,在配置插件的时候可能会出现错误
第一步:安装Erlang OTP,由于RabbitMQ是用Erlang编写的,所以在安装RabbitMQ之前要先安装Erlang 下载地址:http://www.erlang.org/downloads 下载最新版本即可,例如OTP 20.0 Windows 64-bit Binary File, 下载完成后解压,双击otp_win64_20.0.exe 一路next即可,安装成功后需要配置环境变量,可以新建一个变量,例如ERLANG_HOME=D:\erl9.0,最后将环境变量追加到Path中去Path中追加:%ERLANG_HOME\bin%;
第二步:安装RabbitMQ,在官网上下载最新的RabbitMQ(http://www.rabbitmq.com/) 双击rabbitmq-server-3.6.10 一路next即可,安装成功后同样需要配置环境变量,将D:\RabbitMQ\rabbitmq_server-3.6.10\sbin追加到Path中
第三步:安装RabbitMQ Management 插件,执行命令:rabbitmq-plugins enable rabbitmq_management 如果幸运的话一步成功,不知道最新版本会不会好安装,如果在安装中报错,要根据具体错误来解决
// 错误1:Plugin configuration unchanged
D:\RabbitMQ\rabbitmq_server-3.6.10\sbin>rabbitmq-plugins enable rabbitmq_management
Plugin configuration unchanged.
Applying plugin configuration to rabbit@zm-PC... failed.
* Could not contact node rabbit@zm-PC.
Changes will take effect at broker restart.
* Options: --online - fail if broker cannot be contacted.
--offline - do not try to contact broker.
解决办法:将C:\Windows\.erlang.cookie 覆盖到C:\Users\用户名下的.erlang.cookie文件
然后重新安装:D:\RabbitMQ\rabbitmq_server-3.6.10\sbin>rabbitmq-plugins enable rabbitmq_management
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
// 错误2:noting to do.
1.rabbitmq-plugins.bat enable rabbitmq_management
2.rabbitmq-service.bat stop
3.rabbitmq-service.bat install 这句话没用,提示:RabbitMQ service is already present - onlyupdating service parameters
4.rabbitmq-service.bat start
打开浏览器登录:http://127.0.0.1:15672
- 1
- 2
- 3
- 4
- 5
- 6
我就是通过这种方式来解决错误的,虽然命令行中报错,还出现乱码,但是确实可以通过http://127.0.0.1:15672来访问登录页面,参考的文章:http://blog.csdn.net/mooreliu/article/details/44673845
RabbitMQ Management 非常重要,它可以用来管理RabbitMQ,操作(CRUD)各种数据,在开发中和生产中都经常用到。
三:常用命令
一台物理机器上可以有多个erlang节点(实例),每个节点可以运行多个应用程序,其中重要的应用程序有RabbitMQ、Erlang语言自带的Mnesia数据库,以及RabbitMQ相关的插件(如RabbitMQ Management)。可以将Erlang节点类比于java的JVM。
RabbitMQ Management 是一个用于操作RabbitMQ的管理界面,可以操作很多常用的操作,但是并不支持所有的操作,命令行支持所有功能。
rabbitmqctl命令行: 命令行比web管理界面更强大,web界面的命令只是rabbitmqctl命令的一个子集
- 应用程序和集群管理(Application and Cluster Management)、
- 集群配置(Cluster management)、
- 用户管理(User management)、
- 访问控制(Access Control)、
- 参数管理(Parameter Management)、
- 政策管理(Policy Management)、
- 服务器状态(Server Status)
- Miscellaneous
rabbitmq-server // 同时启动erlang节点和应用程序
// 查看rabrabbitmqctl所支持的命令
rabrabbitmqctl
// 查看状态
rabbitmqctl status
//停止erlang node,同时关闭erlang节点和应用程序
rabbitmqctl stop
// 停止RabbitMQ服务,仅关闭erlang节点上的rabbit应用程序
rabbitmqctl stop_app
// 启动RabbitMQ服务
rabbitmqctl start_app
// 格式化rabbitmq node(在集群中需要满足一定的条件才能关闭)
rabbitmqctl reset
// 强制格式化rabbitmq node
rabbitmqctl force_reset
// 清除某个队列的所有消息
rabbitmqctl purge_queue <name>
// 添加用户
rabbitmqctl add_user <username> <password>
// 设置权限
rabbitmqctl set_permissions -p / <username> ".*" ".*" ".*"
// 列举权限
rabbitmqctl list_permissions -p <vhost>
// 列举用户的所有权限
rabbitmqctl list_user_permissions <username>
// 清除权限
rabbitmqctl clear_permissions -p <vhost> <username>
// 认证用户
rabbitmqctl authenticate_user <username> <password>
// 修改密码
rabbitmqctl change_password <username> <password>
// 列举用户
rabbitmqctl list_users
// 删除用户(删除用户时也会把用户相关的权限都删除)
rabbitmqctl delete_user <username>
// 设置tag, tag可以为none最小权限角色,management 管理员角色,policymaker决策者,monitoring 监控,administrator 超级管理员
rabbitmqctl set_user_tags <username> <tag>
// 添加虚拟主机
rabbitmqctl add_vhost <name>
// 删除虚拟主机
rabbitmqctl delete_vhost <name>
// 查看所有虚拟主机
rabbitmqctl list_vhost [<vhostinfoitem> ...]
// 列举默认虚拟机上的所有队列
rabbitmqctl list_queues
// 列出指定虚拟机上的队列
rabbitmqctl list_queues -p <vhost>
// 列举队列,包含队列名称、消息数目、消费者数目、内存使用情况、是否持久化、是否自动删除
rabbitmqctl list_queues name messages counsumers memory durable auto_delete
// 查看交换机
rabbitmqctl list_exchanges [name] [type] [durable] [auto_delete]
// 列举所有绑定
rabbitmqctl list_bindings [-p <vhost>]
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
command line tool
通过curl命令行来访问RabbitMQ Management 中的HTTP API(http://localhost:15672/api/), 返回的格式是json格式
rabbitmqadmin
// 列出服务器上的队列
rabbitmqadmin list queues
// 清空队列上的消息
rabbitmqadmin purge queue name=<queue_name>
rabbitmqadmin -u <username> -p <password> declare exchange name=<exchange_name> type=<type>
// 列举所有连接
rabbitmqadmin list connections name
// 关闭某个连接
rabbitmqadmin close connection name=<name>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
管理RabbitMQ有4中方式
- RabbitMQ Management(Web UI)
- rabbitmqctl
- command line tool(curl)
- rabbitmqadmin
常用配置rabbitmq.config
实际开发中少不了对RabbitMQ的参数进行一些配置,如ip地址,端口号,允许RabbitMQ最大消耗的内存等配置,这些配置可以在配置文件中进行配置/usr/local/etc/rabbitmq/rabbitmq.config
我的微信公众号:
分享一个朋友的人工智能教程。比较通俗易懂,风趣幽默,感兴趣的朋友可以去看看。
RabbitMQ入门教程(一):安装和常用命令的更多相关文章
- RabbitMQ OS X下安装及常用命令-1
RabbitMQ的主页在http://www.rabbitmq.com/ . 1. 安装Erlang RabbitMQ是用Erlang编写的,所以需要先安装Erlang,如果有的话跳过 ...
- RabbitMQ入门教程(十四):RabbitMQ单机集群搭建
原文:RabbitMQ入门教程(十四):RabbitMQ单机集群搭建 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://b ...
- RabbitMQ入门教程(十七):消息队列的应用场景和常见的消息队列之间的比较
原文:RabbitMQ入门教程(十七):消息队列的应用场景和常见的消息队列之间的比较 分享一个朋友的人工智能教程.比较通俗易懂,风趣幽默,感兴趣的朋友可以去看看. 这是网上的一篇教程写的很好,不知原作 ...
- RabbitMQ入门教程(十五):普通集群和镜像集群
原文:RabbitMQ入门教程(十五):普通集群和镜像集群 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.c ...
- RabbitMQ入门教程(十):队列声明queueDeclare
原文:RabbitMQ入门教程(十):队列声明queueDeclare 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https:// ...
- RabbitMQ入门教程(三):Hello World
原文:RabbitMQ入门教程(三):Hello World 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog. ...
- 实验 1 Linux 系统的安装和常用命令
实验 1 Linux 系统的安装和常用命令 (题目) 一.实验目的 (1)掌握 Linux 虚拟机的安装方法.Spark 和 Hadoop 等大数据软件在 Linux 操作系统 上运行可以发挥最佳性能 ...
- ios开发环境配置及cordova安装与常用命令
一.ios开发环境配置 1.首先要有台Mac Book,如果有Mac Book,跳过步骤2.3.4,如果没有,执行步骤2.3.4: 2.下载并安装VMware Workstation,最好是下最新版本 ...
- Git安装以及常用命令(图文详解)
**Git安装以及常用命令** 1.下载安装Git,傻瓜式安装相信大家都会. 官网下载地址:[https://git-scm.com/downloads] 2.Git基本操作 (1)git --ver ...
随机推荐
- oracle(转)
Oracle数据库基本操作 1.概述 Oracle数据库客户端一般需要安装在服务器上,可以在服务器端操作,一般我们可以用sql developer工具远程连接到数据库,先行建立数据库,然后对表进行增删 ...
- Redis大 key的发现与删除方法全解析
个推作为国内第三方推送市场的早期进入者,专注于为开发者提供高效稳定的推送服务,经过9年的积累和发展,服务了包括新浪.滴滴在内的数十万APP.由于我们推送业务对并发量.速度要求很高,为此,我们选择了高性 ...
- C++入门经典-例3.24-找图书的位置
1:运行代码: // 3.24.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> usin ...
- ActiveMQ 初学-1:ActiveMQ 创建连接对象
县创建mq的连接工厂对象 ActiveMQConnectionFactory // 1 建立ConnectionFactory 工厂对象,需要填入,需要填入用户名密码, // 用户名 密码 在 ...
- Dubbo Monitor Simple 监控中心
下载项目源码(其中的 dubbo-registry-simple 代表简单的注册中心,用于开发测试,生产环境一般用zookeeper) https://github.com/apache/incuba ...
- vue组件化之模板优化及注册组件语法糖
vue组件化之模板优化及注册组件语法糖 vue组件化 模板 优化 在 https://www.cnblogs.com/singledogpro/p/12054895.html 这里我们对vue.js ...
- ShuffleNet: An Extremely Efficient Convolutional Neural Network for Mobile Devices
1. 摘要 作者介绍了一种计算非常高效的 CNN 结构称之为 ShuffleNet,它是专门为计算资源非常有限的移动设备设计的. 这种新的结构主要用到了两种操作:分组点卷积(pointwise gro ...
- SVN 清理失败解决方案
SVN有时因各种不明原因导致清理失败,可以采取如下解决办法进行处理: 方法一: 删除根目录下隐藏文件夹“.svn” 然后在根目录文件夹 外面的空白处 检出.比如你项目文件夹名为“D:/source” ...
- 阶段3 2.Spring_08.面向切面编程 AOP_3 spring基于XML的AOP-编写必要的代码
新建项目 先改打包方式 导包,就先导入这俩包的坐标 aspectjweaver为了解析切入点表达式 新建业务层接口 定义三个方法 看返回和参数的区别.为了把这三类方法表现出来,并不局限于方法干什么事 ...
- 阶段3 2.Spring_01.Spring框架简介_01.spring课程四天安排
spring共四天 第一天:spring框架的概述以及spring中基于XML的IOC配置 第二天:spring中基于注解的IOC和ioc的案例 第三天:spring中的aop和基于XML以及注解的A ...