[RabbitMQ]Windows环境下rabbitmqclt(Command Line Tools)出现Erlang distribution failed错误的解决方法
摘要
当使用rabbitmqctl时出现Erlang distribution failed,把%SystemRoot%Windows\System32\config\systemprofile下的.erlang.cookie 复制到%SystemRoot%\Users\UsersName后重启RabbitMQ服务
前情概要
今天在使用RabbitMQ突然无法登陆Web Management,用rabbitmqctl的list_user命令查看用户时发现报了如下错误
attempted to contact: ['rabbit@nodeB']
rabbit@nodeB:
* connected to epmd (port 4369) on nodeB
* epmd reports node 'rabbit' running on port 25672
* TCP connection succeeded but Erlang distribution failed
* Authentication failed (rejected by the remote node), please check the Erlang cookie
current node details:
- node name: rabbitmqcli70@NULL
- effective user's home directory: C:\Users\**
- Erlang cookie hash: *********==
重点在这两行
TCP connection succeeded but Erlang distribution failed
please check the Erlang cookie
因此,重点从erlang cookie下手
解决过程
百度和stackoverflow,无果,基本都是用管理员身份重装RabbitMQ,然而实际问题并不在此。于是直奔官网。
在RabbitMQ官网Command Line Tools下发现erlang Cookie除了Users文件夹下还有另一个存放的地方,对比发现systemprofile里的才是正确的cookie,替换Users下的cookie后重启RabbitMQ
,运行rabbitmqctl,可以正常运行命令了
正常运行list_user发现guest用户被删除了,重新利用rabbitmqctl建立一个管理员用户之后终于可以登录Management了。以防万一,也为了调试方便,在Admin页面重新建立guest用户。
实际上,RabbitMQ nodes与CLT tools利用erlang cookie来辨认它们之间是否能互相连接,若两个erlang cookie不一致则无法使用CLI tools
下面贴出解决方法,有兴趣的可以去最下方的链接,在RabbitMQ官网查看具体说明
解决方法
- 到
%SystemRoot%Windows\System32\config\systemprofile\中复制.erlang.cookie - 到
<%SystemRoot%\Users\UsersName>中把上一步的.erlang.cookie覆盖此文件夹的.erlang.cookie(以防万一先复制副本) - 重启RabbitMQ服务,这一步应该可以忽略
- 重新打开rabbitmqctl,现在可以执行命令了
相关链接:
http://www.rabbitmq.com/cli.html
[RabbitMQ]Windows环境下rabbitmqclt(Command Line Tools)出现Erlang distribution failed错误的解决方法的更多相关文章
- 使用layui异步请求上传图片在tp5.1环境下出现“请对上传接口返回json”的错误的解决方法
正常情况下返回json数据使用return json(); 但是使用layui会报错,然后想到了使用json_encode()包装一下用一个变量接收后,再使用return();返回接收json格式的变 ...
- windows环境下Eclipse开发MapReduce程序遇到的四个问题及解决办法
按此文章<Hadoop集群(第7期)_Eclipse开发环境设置>进行MapReduce开发环境搭建的过程中遇到一些问题,饶了一些弯路,解决办法记录在此: 文档目的: 记录windows环 ...
- 如何在OS X 10.9 Mavericks下安装Command Line Tools(命令行工具)
随着OS X 10.9 于 2013年6月10日在旧金山WWDC(world wide developer conference)上发布.是首个不使用猫科动物命名的系统,而转用加利福尼亚的产物. 该系 ...
- asp.net下ueditor上传大容量视频报http请求错误的解决方法
故障现象: 当使用百度编辑器ueditor上传大容量视频或大容量图片的时候,编辑器报“http请求错误”的解决方法详解: 原因分析: 目前很多CMS整合了百度的ueditor编辑器,但是上传稍微大一点 ...
- windows环境下基于pycharm安装Redis出现的两个错误解决方案
说明:下面给出的两个链接是解决安装和使用Redis的时候遇到的两个问题参考的博客网址,本文有解释不清楚的地方可以原博客查看,侵权删! Q1参考链接-https://blog.csdn.net/maqu ...
- Linux 环境下umount, 报 device is busy 的问题分析与解决方法
在Linux环境中,有时候需要挂载外部目录或硬盘等,但当想umount时,却提示类似“umount:/home/oracle-server/backup:device is busy”这种提示. 出现 ...
- Linux下Apache重启遇到No space left on device错误的解决方法
解决办法:1.输入:ipcs -s 看有没有超过5个,如果有请执行下面2的命令:2.ipcs -s | perl -ane '/^0x00000000/ && `ipcrm -s ...
- macOS Mojave 10.14 无法安装brew缺少Command Line Tools for Xcode的解决办法
问题描述: 首先我的版本是 Xcode 10.1 如果按照以前的方法安装brew 复制 1 /usr/bin/ruby -e "$(curl -fsSL https://raw.github ...
- Windows 7 64bit上安装Oracle Database 12c [INS-30131] 错误的解决方法
Windows 7 64bit上安装Oracle Database 12c,出现以下错误: 解决方法: 第一步:控制面板>所有控制面板项>管理工具>服务>SERVER 启动 ...
随机推荐
- SQL基础(一)
经过这段时间对SQL的基础学习,下面对自己的学习做个总结或者也可以说是个回顾吧! 我练习的是在oracle数据库平台上,并且安装了PLSQL Developer工具.下面是我从小白开始一路学习的回顾: ...
- node mysql问题:Client does not support authentication protocol requested by server; consider upgrading MySQL client!
node后台 mysql处理模块(版本:2.16.0) 执行connect方法时报错: Client does not support authentication protocol requeste ...
- freemarker常用标签解释二
1 assign 指令 使用这个指令你可以创建一个新的变量,或者替换一个已经存在的变量.注意仅仅顶级变量可以被创建/替换(也就是说你不能创建/替换some_hash.subvar,除了some_has ...
- Django 13 admin和auth系统、权限问题
一.auth系统 auth系统的数据表 #User:User是auth模块中维护用户信息的关系模式(继承了models.Model), 数据库中该表被命名为auth_user. #Group:User ...
- maven 过滤webapp下的文件
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-p ...
- Mock Server利器 - Moco
Moco介绍Moco独立运行所需环境如何运行Moco启动http服务启动https服务Moco HTTPs API配置如何在配置文件添加注释约定请求Body约定接口的uri约定请求参数约定请求方法约定 ...
- mybatis-Plus 增强版用法收藏
转载:http://www.cnblogs.com/okong/p/mybatis-plus-guide-one.html#xml%E5%BD%A2%E5%BC%8F https://blog.csd ...
- JS 打乱数组顺序
function rand(arr) { var len = arr.length //首先从最大的数开始遍历,之后递减 for(var i = arr.length - 1; i >= 0; ...
- perf命令
@(Linux基础)[perf命令] perf命令 ---- 简介 Perf是内置于Linux内核源码树中的性能剖析(profiling)工具,它基于事件采样原理,以性能事件为基础,支持针对处理器相关 ...
- shell 0学习
例一:列出/home 文件夹下的所有文件和目录的详细资料,可以使用如下命令: ls -a -l /home ls -al /home 例二:列出当前目录中所有以”d”开头的文件目录的详细内容,可 ...