该博客转载自:https://blog.csdn.net/gy__my/article/details/78295943

原作者:Eric Li  出处:http://www.cnblogs.com/ericli-ericli/

1.安装Erlang

所以在安装rabbitMQ之前,需要先安装Erlang 。

小编使用的是otp_win64_18.1 ,需要其他版本或者32位系统的,可以去官网下载。

全部点击“下一步”就行。

有的选择其他的安装方式,可能需要添加一下系统环境变量(正常安装的也要检查下):

有最好,没有的话就手动添加嘛。

2.安装RabbitMQ

下载运行rabbitmq-server-3.6.5 ,需要其他版本或者32位系统的,可以去官网下载。

依旧可以不改变默认进行安装。

需要注意:默认安装的RabbitMQ 监听端口是5672

3.配置

激活 RabbitMQ's Management Plugin

使用RabbitMQ 管理插件,可以更好的可视化方式查看Rabbit MQ 服务器实例的状态。

打开命令窗口:

输入命令:

"C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.5\sbin\rabbitmq-plugins.bat" enable rabbitmq_management

这样,就安装好插件了,是不是能使用了呢?别急,需要重启服务才行,使用命令:

net stop RabbitMQ && net start RabbitMQ

这时候的,也许会出现这种结果:

“发生错误:发生系统错误 5。  拒绝访问。”

这是什么鬼?查了下,原来,5代表的是:不是系统管理员权限。

问题解决方案:使用管理员打开cmd再执行此命令:

这样就结束了吗?当然没有。

创建用户,密码,绑定角色

使用rabbitmqctl控制台命令(位于C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.5\sbin>)来创建用户,密码,绑定权限等。

注意:安装路径不同的请看仔细啊。

rabbitmq的用户管理包括增加用户,删除用户,查看用户列表,修改用户密码。

查看已有用户及用户的角色:

rabbitmqctl.bat list_users

新增一个用户:

rabbitmqctl.bat add_user username password

此时来看下我们当前用户哈:

eric 后面没有“[administrator]”

这个administrator是干嘛用的呢?这就涉及到用户角色问题了:

按照我个人理解,rabbitmq用户角色可分为五类:超级管理员, 监控者, 策略制定者, 普通管理者以及其他。

(1) 超级管理员(administrator)

可登陆管理控制台(启用management plugin的情况下),可查看所有的信息,并且可以对用户,策略(policy)进行操作。

(2) 监控者(monitoring)

可登陆管理控制台(启用management plugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)

(3) 策略制定者(policymaker)

可登陆管理控制台(启用management plugin的情况下), 同时可以对policy进行管理。

(4) 普通管理者(management)

仅可登陆管理控制台(启用management plugin的情况下),无法看到节点信息,也无法对策略进行管理。

(5) 其他的

无法登陆管理控制台,通常就是普通的生产者和消费者。

好啦,我们也给 eric 变成 “超级管理员” 角色:

rabbitmqctl.bat set_user_tags username administrator

再看下结果哈:

当然,除了上面的administrator 还有 monitoring、policymaker、management、自定义名称 ,对应上面介绍到的不同的角色。

像我们人一样,我们角色除了是公司的员工,还是父母的孩子、子女的爸妈等,用户也可以同时具有多个角色,设置方式:

rabbitmqctl.bat  set_user_tags  username tag1 tag2 ...

恩,现在总觉得guest 这个不安全(它的默认密码是guest),想更改密码,好办:

rabbitmqctl change_password userName newPassword

有的人也许会说,我就是看guest不爽,老子新增了administrator用户了,就是想干掉它,可以:

rabbitmqctl.bat delete_user username

这时,可能有人就要问了:命令框是只有一个用户了,你怎么操作啊?怎么查看执行情况啊/

当然有路子啦:

使用浏览器打开http://localhost:15672访问Rabbit Mq的管理控制台,使用刚才创建的账号登陆系统:

其实,除了可查看所有的信息 ,上面的命令 增删改查、权限设置,都可以在这个页面完成,还可以依据业务需求设置策略(policy),具体的就不在这里啰嗦了,大家可以看看网上的帖子。

权限设置

用户有了角色,那也需要权限设置啊,别急,慢慢来:

按照官方文档,用户权限指的是用户对exchange,queue的操作权限,包括配置权限,读写权限。

我们配置权限会影响到exchange、queue的声明和删除。

读写权限影响到从queue里取消息、向exchange发送消息以及queue和exchange的绑定(binding)操作。

例如: 将queue绑定到某exchange上,需要具有queue的可写权限,以及exchange的可读权限;向exchange发送消息需要具有exchange的可写权限;从queue里取数据需要具有queue的可读权限

权限相关命令为:

(1) 设置用户权限

rabbitmqctl  set_permissions  -p  VHostPath  User  ConfP  WriteP  ReadP

(2) 查看(指定hostpath)所有用户的权限信息

rabbitmqctl  list_permissions  [-p  VHostPath]

(3) 查看指定用户的权限信息

rabbitmqctl  list_user_permissions  User

(4)  清除用户的权限信息

rabbitmqctl  clear_permissions  [-p VHostPath]  User

现在环境搭好了,用户、角色、权限全部设置好,开始进行code(原理整理,及编码 待续)

参考:

安装参考 http://www.rabbitmq.com/install-windows-manual.html

权限内容参考 http://www.rabbitmq.com/man/rabbitmqctl.1.man.html

权限命令摘自 https://my.oschina.net/hncscwc/blog/262246

(转) windows下 安装 rabbitMQ 及操作常用命令的更多相关文章

  1. windows下 安装 rabbitMQ 及操作常用命令

    rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统.它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rab ...

  2. windows下 安装 rabbitMQ 及操作常用命令(操作创建用户密码 角色等)

    rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统.它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rab ...

  3. windows下安装RabbitMQ【我】

    windows下 安装 rabbitMQ rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统.它遵循Mozilla Public License开源协议,采用 Erlang 实 ...

  4. Windows下安装RabbitMQ

    今天正好给自己机器安装rabbitmq,总结下安装经验. 现在国内访问erlang,和 RabbitMQ 官网好像都很难连上.我已下载好了资源,需要的朋友可以下载. 链接: https://pan.b ...

  5. windows下安装RabbitMq和常用命令

    ----RabbitMq安装-----windows下安装:(1)首先windows下安装好了erlang和rabbitmq.如下地址同时下载和安装:Erlang:http://www.erlang. ...

  6. windows 下安装 rabbitmq报init terminating in do_boot错误

    好长时间没有写东西了,记一个安装笔记吧. 目前市面上比较常用的几个消息中间件,rabbitmq算是风评比较好的,所以就拿来安装一下玩玩喽(很有可能也仅限于是安装一下....)安装过程不表,无非是下载E ...

  7. windows 下 安装 RabbitMQ

    RabbitMQ是一个在AMQP协议标准基础上完整的.可复用的企业消息系统.它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器.它扮演 ...

  8. Windows 下安装RabbitMQ服务器及基本配置

    RabbitMQ是一个在AMQP协议标准基础上完整的,可复用的企业消息系统.它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rab ...

  9. windows下安装Rabbitmq详解

    RabbitMQ是建立在强大的Erlang OTP平台上,因此安装Rabbit MQ的前提是安装Erlang. 1.什么是Erlang? Erlang(['ə:læŋ])是一种通用的面向并发的编程语言 ...

随机推荐

  1. boost::coroutine 无法显示调用栈

    boost::coroutine 无法显示调用栈(金庆的专栏)一例因 boost::format() 格式化参数个数错误造成的 coredump,因为使用了 boost::coroutine, 无法显 ...

  2. Qt中实现启动画面

    纵所周之,当一个程序的启动比较耗时的时候,为了不让用户枯燥的等待或者是误以为程序运行异常了,所以我们都会在启动比较耗时的程序中加上启动界面 ,例如office软件等等. 在Qt中实现启动界面,主要就是 ...

  3. UNIX环境高级编程——线程私有数据

    线程私有数据(Thread-specific data,TSD):存储和查询与某个线程相关数据的一种机制. 在进程内的所有线程都共享相同的地址空间,即意味着任何声明为静态或外部变量,或在进程堆声明的变 ...

  4. android:getSlotFromBufferLocked: unknown buffer: 0xf3d544c0

    欢迎关注公众号,每天推送Android技术文章,二维码如下:(可扫描) 今天运行一个小程序,退出的时候竟然打出一条错误log日志.一时慌乱,在国内网站也没找到合适的答复.通过查看国外的网站终于查到了原 ...

  5. 如何在Cocos2D 1.0 中掩饰一个精灵(一)

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 原帖来自Ray Wunderlich写的精彩的文章 How To ...

  6. Android进阶(三)android httpClient 支持HTTPS的访问方式

    项目中Android https请求地址遇到了这个异常(无终端认证): javax.net.ssl.SSLPeerUnverifiedException: No peer certificate 是S ...

  7. msm8974 camera driver添加新摄像头kernel hal修改

    添加一款新摄像头流程 1添加sensor kernel driver, 主要实现上电.rst.pwd.mclk等power setting,sensor prob & sensor  i2c ...

  8. TCP的定时器系列 — 保活定时器

    主要内容:保活定时器的实现,TCP_USER_TIMEOUT选项的实现. 内核版本:3.15.2 我的博客:http://blog.csdn.net/zhangskd 原理 HTTP有Keepaliv ...

  9. 海量数据挖掘MMDS week2: 频繁项集挖掘 Apriori算法的改进:非hash方法

    http://blog.csdn.net/pipisorry/article/details/48914067 海量数据挖掘Mining Massive Datasets(MMDs) -Jure Le ...

  10. React Native之AppRegistry模块

    我们在写react native的js的时候,在最后总会加上一段代码: AppRegistry.registerComponent('ReactDemo', () => ReactDemo); ...