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. Python 输入输出 数据类型 变量

    python输入输出 数据类型 变量 输入输出 print()在Python3中是函数 >>>print('hello world') #print注意print前面不要有任何空格 ...

  2. CPP-基础:C++的new int()与new int[]

    编写一个List类: class List { int length; //列表长度 int* lpInt; //列表指针 List(int size); ~List(); } List::List( ...

  3. bootstrap历练实例:按钮作为输入框组前缀或后缀

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  4. java在线聊天项目0.2版本 制作客户端窗体,使用swing(用户界面开发工具包)和awt(抽象窗口工具包) BorderLayout布局与GridLayout布局不同之处 JPanel设置大小

    代码如下: package com.swift; import java.awt.BorderLayout; import java.awt.Color; import javax.swing.JBu ...

  5. python爬虫基础01-HTTP协议

    深入浅出了解HTTP协议 HTTP(HyperText Transfer Protocol,超文本传输协议)是互联网上应用最为广泛的一种网络协议.目前使用最普遍的一个版本是HTTP 1.1. HTTP ...

  6. Web框架之Django_04 模板层了解(过滤器、标签、自定义过滤器、标签、inclusion_tag、模板的继承与导入)

    摘要: 模版层(模板语法) 模板语法 过滤器 标签 自定义过滤器.标签 inclusion_tag 模板的继承 模板的导入 一.模板语法: 常用语法:{{     }}    变量相关{% %}    ...

  7. django 12天(跨域,文件上传,下载,cookie,session)

    django 12天(跨域,文件上传,下载) 跨域 什么是跨域 1.协议不同 2.端口不同 3.主机不同 如何解决跨域 1.安装django-cors-headers模块 2.在settings.py ...

  8. Django 千锋培训的学习笔记(2)

    Django 千锋培训读书笔记 https://www.bilibili.com/video/av17879644/?p=1 切换到创建项目的目录 cd C:\Users\admin\Desktop\ ...

  9. 解决php7.3 configure: error: off_t undefined

    //解决该问题:php7.3 configure: error: off_t undefined; check your library configuration # 添加搜索路径到配置文件echo ...

  10. 序列化 random模块应用

    序列化 我们今天学习下序列化,什么是序列化呢? 将原本的字典.列表等内容转换成一个字符串的过程就叫做序列化. 为什么要有序列化模块: 比如,我们在python代码中计算的一个数据需要给另外一段程序使用 ...