今天 在 64位 的 Windows Server 2016 安裝 RibbitMQ 時,遇到這個問題
執行 RabbitMQ時 報錯
C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.9\sbin>rabbitmq-plugins.bat enable rabbitmq_management init terminating in do_boot ({cannot get bootfile,start_clean.boot}) Crash dump is being written to: erl_crash.dump...done 子目錄或檔案 terminating 已經存在。 處理: terminating 時出錯。 子目錄或檔案 in 已經存在。 處理: in 時出錯。 子目錄或檔案 do_boot,{'cannot get bootfile','start_clean.boot'}}-mnesia 已經存在。 處理: do_boot,{'cannot get bootfile','start_clean.boot'}}-mnesia 時出錯。 {"init terminating in do_boot",{'cannot get bootfile','start_clean.boot'}} init terminating in do_boot ({cannot get bootfile,start_clean.boot})
懷疑是 Windows Server 2016 對 C盤訪問許可權問題 (網上也有說是 安裝目錄中不能有 空格)
解決方案,親測好用
第一步
把 原安裝在C盤的 Erlang 和 RabbitMQ Server 都卸了,並刪除 安裝目錄,重啟電腦
第二步
將 Erlang 安裝在 D盤 根目錄下 如:D:\erl-23.1
將 RabbitMQ Server 安裝在 D盤 根目錄下 如:D:\RabbitMQ Server
第三步 配置環境變數
ERLANG_HOME 為 D:\erl-23.1\erts-11.1
RABBITMQ_SERVER 為 D:\RabbitMQ Server\rabbitmq_server-3.7.9
Path 加入兩個變數
%ERLANG_HOME%\bin
%RABBITMQ_SERVER%\sbin
若是其它版本的windows 的 Path 在一行配置的,需要在注意 與上一個變數要用 ; 號 隔開
執行 cmd 進入 D:\RabbitMQ Server\rabbitmq_server-3.7.9\sbin 目錄
執行 rabbitmq-plugins.bat enable rabbitmq_management
出現 started 3 plugins 字樣 說明 rabbitMQ 啟動成功
第四步 驗證rabbitmq是否安裝成功
輸入 以下命令
rabbitmqctl status
在瀏覽器輸入地址:http://localhost:15672,輸入預設賬號:guest 密碼:guest,就能進入RabbitMQ介面了。
登陸後,進入主頁
第五步 重新啟動 RabbitMQ
如果不小心把 cmd.exe 給關閉了, RabbitMQ 自然也就退出執行了
輸入命令: cd rabbitMQ的sbin路徑,進入sbin目錄
輸入命令:rabbitmq-server.bat 啟動RabbitMQ服務