RabbitMQ是目前比较使用比较广泛的一个队列服务器,但是很多朋友在使用过程中,也遇到一些问题,这篇文章主要是做一个总结吧

本篇文章,虽然标题命名为“安装与卸载”,但是网上有很多类似的文章,我就简单说一下,主要目的是记录安装与卸载过程中遇到一些坑

(一)安装

  1.RabbitMQ依赖于Erlang虚拟机,首先我们先去官网下载ErlangRabbitMQ,也可以直接去网盘下载,提取码:l80p;

  2.鼠标右键 - 以管理员身份运行,分别安装Erlang和RabbitMQ

  3.Win+R,输入CMD,打开dos命令窗口,输入“cd C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.12\sbin”(根据实际安装路径调整),回车,定位到RabbitMQ安装目录sbin文件夹;

  4.输入“rabbitmqctl status”,查看是否安装成功;

    

  5.输入“rabbitmq-plugins enable rabbitmq_management”,打开RabbitMQ管理插件;

    

  6.使用服务器上的浏览器,地址“http://127.0.0.1:15672/”,打开管理页面(账号:guest;密码:guest)

  7.创建一个administered账户(guest只允许本机访问)

    

(二)卸载

  1.打开Windows控制面板,双击“程序和功能”。

  2.在当前安装的程序列表中,右键单击RabbitMQ Server,然后单击“卸载”。

  3.在当前安装的程序列表中,右键单击“Erlang OTP”,然后单击“卸载”。

  4.打开Windows任务管理器。

  5.在任务管理器中,查找进程epmd.exe。 如果此进程仍在运行,请右键单击该进程,然后单击“结束进程”。

  6.删除RabbitMQ和Erlang的所有安装目录。

  7.删除文件C:\ Windows \ .erlang.cookie(如果存在)。

  8.转到用户文件夹:C:\ Users \ [username],然后删除文件.erlang.cookie。删除

  9.同样在User文件夹中,转到AppData \ Roaming \ RabbitMQ。删除RabbitMQ文件夹。  10.打开运行cmd->sc delete RabbitMQ。

  10.打开运行->regedit 找到RabbitMQ节点,删掉即可。

    

  参考:https://blog.csdn.net/qq_41463655/article/details/86747917

(三)那些年遇到的坑(重点来了)

  1.卸载时,在任务管理器中,找不到epmd.exe的进程,但是删除目录中的文件时,却提示被占用

    解决方案:任务管理器 - 性能 - 打开资源监视器,在资源监视器中找到epmd,右键 - 结束进程,问题解决

      

  2.安装好之后,创建了账号,但是使用过程中,依然提示权限不足

    a.原因是创建了管理员账号,却没有分配权限,点击用户,给分配权限就可以了,这里默认的管理员拥有所有权限

      

    

  3.安装RabbitMQ时,查看安装的详细信息,出现异常,导致服务无法启动

    a.一般情况下不会出现该问题,因为安装Erlang的时候,会自动添加注册表,但是某些Windows环境问题(未找到问题点),或者不是用管理员安装(权限不足),导致无法添加注册表,导致安装失败

    解决方案:

      手动添加注册表信息,9.0是指Erlang的版本,根据实际情况可能不同,路径是Erlang的安装目录,根据实际情况配置安装目录

      依次执行命令:rabbitmq-service stoprabbitmq-service removerabbitmq-service installrabbitmq-service start,卸载并重新安装RabbitMQ的服务

    

    

  4.安装在第4步的时候,出现问题“ unable to connect to node 'rabbit@2012-R2-Datacenter-64bit': nodedown”

    解决方案:看到网上说是C:\Windows\.erlang.cookie和C:\Users\[username]\.erlang.cookie的口令不一致导致的,删除其一,将另外一个复制过来就可以了

  5.正常使用中,发现日志记录增长很快,日志过大,不利于定位问题

    因为rabbitMQ日志默认记录级别是Info,会记录所有进出栈信息,导致日志过大,只需要将配置文件的日志级别设置为error或者warning

    配置文件和日志的目录在安装用户目录下,可以在管理页面的首页查看

    [
      {rabbit, [
          {vm_memory_high_watermark_paging_ratio, 0.4},
          {vm_memory_high_watermark, 0.4},
          {log_levels, [{connection, warning}, {channel, warning}]}
        ]
      }  
    ].

    

  6.使用MQ过程中,业务量大的时候,服务器CPU会暴增,原因是可能是因为每次连接都是创建一个连接对象,又没有及时释放导致的,建议创建连接通道时,使用单例模式

  7.安装目录,尽量不要使用中文,可能会因为中文编码导致乱码

  8.安装目录,尽量不要使用带空格的目录,网上有一些说是空格也会有问题,虽然我目前安装的目录有空格也没有出现什么异常

总结:

  这就是我们公司使用MQ过程中遇到的一些问题,做一个记录,分享出来希望能帮助到遇见类似问题的朋友,如果各位大佬有更好的解决方案欢迎指教更正,多多交流

Windows下,RabbitMQ安装、卸载以及遇到的坑的更多相关文章

  1. Windows下RabbitMQ安装及入门

    1.Windows下安装RabbitMQ需要以下几个步骤 (1):下载erlang,原因在于RabbitMQ服务端代码是使用并发式语言erlang编写的,下载地址:http://www.erlang. ...

  2. [转]RabbitMQ系列(一):Windows下RabbitMQ安装及入门

    https://blog.csdn.net/hzw19920329/article/details/53156015 1.Windows下安装RabbitMQ需要以下几个步骤 (1):下载erlang ...

  3. :Windows下RabbitMQ安装及入门

    1.Windows下安装RabbitMQ需要以下几个步骤 (1):下载erlang,原因在于RabbitMQ服务端代码是使用并发式语言erlang编写的,下载地址:http://www.erlang. ...

  4. Windows下RabbitMQ安装,部署,配置

    安装部署 1.当前环境以及参考资料出处 部署环境:windows server 2008 r2 enterprise 官方安装部署文档:http://www.rabbitmq.com/install- ...

  5. RabbitMQ(一):Windows下RabbitMQ安装

    1.Windows下安装RabbitMQ需要以下几个步骤 (1):下载erlang,原因在于RabbitMQ服务端代码是使用并发式语言erlang编写的,下载地址:http://www.erlang. ...

  6. windows 下rabbitmq 安装---转载

    原文地址:http://blog.sina.com.cn/s/blog_7cc0c8cc0101mb4a.html 1.下载并安装erlang,http://www.erlang.org/downlo ...

  7. 一、WINDOWS下 RabbitMQ安装部署

    安装需要用管理员权限,全部右键管理员身份运行.建议安装到虚拟机里面,免得影响日常使用. 1.下载   https://dl.bintray.com/rabbitmq/all/rabbitmq-serv ...

  8. Windows下RabbitMQ安装及配置

    下载rabbitmq_server以及Erlang OTP平台 安装好了启动服务就行了 也可用命令 net start RabbitMQ  或  net stop RabbitMQ 配置用户添加环境变 ...

  9. windows下jenkins安装过程中的那些坑

    在jenkins官网https://jenkins.io/download/下载2.89.4版本的war包,使用jar -jar jenkins.war命令安装,报端口被占的错误,使用jar -jar ...

  10. Ruby入门--Linux/Windows下的安装、代码开发及Rails实战

    Ruby入门--Linux/Windows下的安装.代码开发及Rails实战 http://www.linuxidc.com/Linux/2014-04/100242.htm Ubuntu 13.04 ...

随机推荐

  1. leetcode_day1

    1.给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个数组中同样 ...

  2. Vue的elementUI实现自定义主题

    使用vue开发项目,用到elementUI,根据官网的写法,我们可以自定义主题来适应我们的项目要求,下面来介绍一下两种方法实现的具体步骤,(可以参考官方文档自定义主题官方文档),先说项目中没有使用sc ...

  3. 快学UiAutomator UiDevice API 详解

    一.按键使用 返回值 方法名 说明 boolean pressBack() 模拟短按返回back键 boolean pressDPadCenter() 模拟按轨迹球中点按键 boolean press ...

  4. Bootstrap-datepicker设置开始时间结束时间范围

    $('.form_datetime').datepicker({   format: 'yyyy-mm-dd',    weekStart: 1,    startDate: '+1',   endD ...

  5. C++ _ const的用法,特别是用在函数前面与后面的区别!

    在普通的非 const成员函数中 this的类型是一个指向类类型的 const指针.可以改变this所指向的值,但不能改变 this所保存的地址. 在 const成员函数中 this的类型是一个指向 ...

  6. js获得本季度的开始日期 结束日期

    var now = new Date(); //当前日期var nowMonth = now.getMonth()+1; //当前月var nowYear = now.getFullYear(); / ...

  7. shell脚本,锁机制

    [root@localhost wyb]# cat suijizhi.sh #!/bin/bash a=`|grep -v grep |wc -l` echo "$a" [ $a ...

  8. Spring 概念及特点 Spring下载地址 控制反转IoC实现原理

    Spring下载地址 http://repo.springsource.org/libs-release-local/org/springframework/spring/ Spring是开源full ...

  9. CS193p Lecture 10 - Multithreating, UIScrollView

    Multithreating(多线程) 网络请求例子: NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithStrin ...

  10. React初识整理(三)--受控组件解决方法

    1. 受控组件:组件处于受控制状态,不可更改输入框内的值. 2. 什么情况下会让组件变成受控组件? - 文本框设置了value属性的时候 - 单选框或多选框设置了checked属性的时候. 3. 如何 ...