好长时间没有写东西了,记一个安装笔记吧。

目前市面上比较常用的几个消息中间件,rabbitmq算是风评比较好的,所以就拿来安装一下玩玩喽(很有可能也仅限于是安装一下。。。。)安装过程不表,无非是下载Erlang和RabbitMQ然后就是windows下的无脑装了。不过,这里需要注意下,最好这两个软件都不要安装在默认的program files的文件夹下(无论有没有带x86)应为那个万恶的空格,很容易会出莫名其妙的问题。然后就是安装完成启动,愉快的玩耍了,如果你真的可以愉快的玩耍了,估计也不会搜这个问题了。。。。

按照安装手册安装完成后,一般来说,rabbitmq会以windows 服务的形式运行,然后使用相关命令行可以操作。但是,在我安装完成之后,始终无法启动成功,使用rabbitmqctl.bat这个查看状态回报如下错误:

{"init terminating in do_boot",{badarg,[{io,format,[<0.53.0>,"~n~nBOOT FAILED~n===========~n~nError description:~n   ~p~n~nLog files (may contain more information):~n   ~s~n   ~s~n~n",[{could_not_start,rabbit,{badarg,[{io,format,[<0.135.0>,"~n              ~s ~s. ~s~n  ##  ##      ~s~n  ##  ##~n  ##########  Logs: ~s~n  ######  ##        ~s~n  ##########~n              Starting broker...~n",["RabbitMQ","3.6.6","Copyright (C) 2007-2016 Pivotal Software, Inc.","Licensed under the MPL.  See http://www.rabbitmq.com/",[67,58,47,85,115,101,114,115,47,27494,24198,36229,47,65,112,112,68,97,116,97,47,82,111,97,109,105,110,103,47,82,97,98,98,105,116,77,81,47,108,111,103,47,82,65,66,66,73,84,126,49,46,76,79,71],[67,58,47,85,115,101,114,115,47,27494,24198,36229,47,65,112,112,68,97,116,97,47,82,111,97,109,105,110,103,47,82,97,98,98,105,116,77,81,47,108,111,103,47,82,65,66,66,73,84,126,50,46,76,79,71]]],[]},{rabbit,start,2,[{file,"src/rabbit.erl"},{line,683}]},{application_master,start_it_old,4,[{file,"application_master.erl"},{line,273}]}]}},[67,58,47,85,115,101,114,115,47,27494,24198,36229,47,65,112,112,68,97,116,97,47,82,111,97,109,105,110,103,47,82,97,98,98,105,116,77,81,47,108,111,103,47,82,65,66,66,73,84,126,49,46,76,79,71],[67,58,47,85,115,101,114,115,47,27494,24198,36229,47,65,112,112,68,97,116,97,47,82,111,97,109,105,110,103,47,82,97,98,98,105,116,77,81,47,108,111,103,47,82,65,66,66,73,84,126,50,46,76,79,71]]],[]},{rabbit,log_boot_error_and_exit,3,[{file,"src/rabbit.erl"},{line,742}]},{rabbit,start_it,1,[{file,"src/rabbit.erl"},{line,407}]},{init,start_em,1,[{file,"init.erl"},{line,1076}]},{init,do_boot,3,[{file,"init.erl"},{line,784}]}]}}

大差不差就这些东西,网上多个方法都是说安装路径不能有non-ASCII字符,但是我在确定了安装路径上确实没有乱七八糟的字符后,怀疑是RabbitMQ在启动时可能会使用到文件路径有non-ASCII字符。果不其然,通过官方文档查看,如果没有设置环境变量,Rabbitmq会使用一些默认的环境变量。在这个默认路径里面,我的电脑里面的路径有中文,所以没有成功启动。可以通过设置RABBITMQ_BASE这个变量来改变文件存放路径。

我们可以在rabbitmq-env.bat这个文件里面看到有注释显示了RABBITMQ_BASE不能含有non-ASCII字符:

REM Make sure $RABBITMQ_BASE contains no non-ASCII characters.
if not exist "!RABBITMQ_BASE!" (
mkdir "!RABBITMQ_BASE!"
)

所以,搞IT的,文件路径全英文很重要啊。

windows 下安装 rabbitmq报init terminating in do_boot错误的更多相关文章

  1. Windows下安装RabbitMQ报错:unable to perform an operation on node时的解决方案

    在计算机领域中,想要程序完成各种功能,那么数据的交流和计算是非常重要的.现在已知的程序动作机制有协程,线程和进程. 在同一个程序中,或者说同一个进程中,数据的交流,传递,计算是非常的简单,只要把相关数 ...

  2. Rabbitmq安装报错 Windows下安装RabbitMQ报错Error: unable to connect to node rabbit@xxx: nodedown

    1..erlang.cookie文件不一致 如果是Windows 64位系统两个文件都要修改,另外当C:\Users\用户\.erlang.cookie没有修改权限的时候 用上面这个文件覆盖下面两个目 ...

  3. windows下安装RabbitMQ【我】

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

  4. Windows下安装RabbitMQ

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

  5. windows下安装pywin32报错:close failed in file object destructor:sys.excepthook is missing lost sys.stderr

    今晚要写搜索引擎作业,搭scrapy环境,遇到了下面问题: windows下安装pywin32报错:close failed in file object destructor:sys.excepth ...

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

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

  7. Windows下安装Tensorflow报错 “DLL load failed:找不到指定的模块"

    Windows下安装完tensorflow后,在cmd下运行python后import tensorflow出现如下错误: Traceback (most recent call last):  Fi ...

  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. 【POJ】1094 Sorting It All Out(拓扑排序)

    http://poj.org/problem?id=1094 原来拓扑序可以这样做,原来一直sb的用白书上说的dfs............ 拓扑序只要每次将入度为0的点加入栈,然后每次拓展维护入度即 ...

  2. 在执行一行代码之前CLR做的68件事[The 68 things the CLR does before executing a single line of your code]

    待翻译,原文地址:http://mattwarren.org/2017/02/07/The-68-things-the-CLR-does-before-executing-a-single-line- ...

  3. Matplotlib植入PyQt5 + QT5的UI呈现

    实现matplotlib图形通过PyQt5+Qt5在GUI中呈现步骤: 第一步,通过matplotlib.backends.backend_qt5agg类来连接PyQt5: import matplo ...

  4. shrink-to-fit(自适应宽度)

    自适应宽度是指当未明白设定容器的宽度(或外边距设为auto)时,在特定的情况下容器的宽度会依据情况自行设定.而设定的结果往往并非我们想要的. W3C规范中描写叙述了几种shrink-to-fit的情况 ...

  5. ipc 进程间通讯的AIDL

    1.什么是aidl:aidl是 Android Interface definition language的缩写,一看就明白,它是一种android内部进程通信接口的描述语言,通过它我们可以定义进程间 ...

  6. 引入外部文件的时候为什么省略http:

    [摘要]相信很多时候大家在使用网上的实例代码的时候,需要引入外部文件,然而它们通常都是省略了http:,这是为什么呢? 先给大家看一个简单的小例子,引入外部jquery文件: <script s ...

  7. ios 开发证书制作

    1.首先打开Mac中的keychain 选择钥匙串访问-证书助手-创建证书-导出CertificateSigningRequest.CertSigningRequest.CertSigningRequ ...

  8. open live writer 代码着色插件

    插件地址1: http://files.cnblogs.com/files/zsy/OpenLiveWriter.CNBlogs.SourceCode.zip 下载,解压,把里面的文件放到最新的 ap ...

  9. jenkins提交SVN文件

    需求背景: 公司有内网和外网两台SVN服务器,都需要维护相同的配置文件,但是我们想能否在内网修改配置文件后同时提交到外网SVN服务器上. 开发人员操作步骤 1.开发人员在IDE中checkout内网c ...

  10. 170424、Mysql权限控制 - 允许用户远程连接

    Mysql为了安全性,在默认情况下用户只允许在本地登录,可是在有此情况下,还是需要使用用户进行远程连接,因此为了使其可以远程需要进行如下操作: 一.允许root用户在任何地方进行远程登录,并具有所有库 ...