今天嘗試在筆記本(Win10)安裝RabbitMQ,可是一直失敗。最後解決後發現是個天大坑,惱火,記錄下來。
先說結論:
1、RabbitMQ時,安裝目錄不要有空格、中文,而默認安裝目錄時有空格的,所以一定要改。
2、Win的賬戶也得是英文,例如C:\Users\此處不能爲中文\AppData\Roaming\RabbitMQ
詳細過程如下
首先我找了個安裝攻略《RabbitMQ安裝教程(Windows/Linux都有)》。這個很好,簡單粗暴。
文章大概的意思是
1、首先需要安裝 Erlang環境
2、安裝RabbitMQ
我找同事要了,otp_win64_17.3.exe和rabbitmq-server-3.6.6.exe開始安裝。
當我執行 rabbitmq-plugins enable rabbitmq_management時,報錯了。
然後我請同事過來幫忙,無果。
然後我有百度到了一個《RabbitMQ系列(一):Windows下RabbitMQ安裝及入門》這個博文更詳細。其中提到了一句話,這個很重要。安裝RabbitMQ時,安裝目錄不要有空格,而默認安裝目錄時有空格的,所以一定要改。
我會想我的安裝目錄,果然有空格,然後我先後又照着這個博文安裝了兩邊,依然報錯。
然後,我又全部卸載了Erlang環境和RabbitMQ。又從官網上重新下載了otp_win64_20.2.exe和rabbitmq-server-3.7.3.exe。
但依然報錯、儘管錯誤信息不太一樣了。
我大概被卡在這一個下午,前進。
後來,我看了一個《Rabbitmq 啓動報錯》。博文大概的意思是,我的rabbitMQ已經安裝好了,執行rabbitmq-plugins.bat enable rabbitmq_management,這個命令的時候,出現以下錯誤
解決方法:C:\Users\Administrator\AppData\Roaming\rabbitmq下的文件給刪除,原因可能是我卸載多多次rabbitMQ,最開始裝的是32位的,後來是64位的,可能新安裝的mq在加載以前的數據文件的時候,出錯了,導致的這個問題。
然後我找到我本地的路徑,將其全部刪除。
然後執行rabbitmq-plugins enable rabbitmq_management。貌似好了。
我趕緊rabbitmq-service start 。結果又Err
然後,我rabbitmq-service stop,rabbitmq-service remove,rabbitmq-service install,rabbitmq-service start,rabbitmq-plugins enable rabbitmq_management。結果報錯又回來了。
靜下心來我仔細觀察這個提示。我發現這個提示並不是錯誤提示,它大概的意思是,啓用插件,準備修改配置,但插件本身就是啓用狀態,所以unchanged。
然後執行rabbitmq-plugins disable rabbitmq_management和rabbitmq-plugins enable rabbitmq_management驗證了這個事情。
然後我回頭看多次安裝會留下之前記錄的問題,我注意到C:\Users\中文\AppData\Roaming\rabbitmq。我的目錄裏有中文,我又開始懷疑中個問題。
接下來我又開始研究如何把這個中文改成英文。
我參考百度經驗做的
大概思路爲
1、在控制面板、用戶管理,新增一個管理賬號B。(因爲本身的管理賬號無法修改目錄名字)
2、註銷,登陸B,修改文件夾名字。
這又出現了一個問題,文件夾被程序佔用,無法修改。解決方法
任務管理器、性能、打開資源監聽器
CPU、關聯句柄中搜索被佔用文件夾。如圖。(我當時被Rabbit佔用了,我又切回賬號將Rabbit刪了)
3、修改註冊表信息
依次展開HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Profilelist,在Profilelist下的文件夾對應系統中用戶,而文件夾中ProfileImagePath值是指向每個用戶文件夾的地址,一個個點擊查看,找到中文名用戶的對應所在的ProfileImagePath值。如圖
然後註銷,登陸回我的賬戶。
然後安裝Rabbit,繼續執行rabbitmq-service stop,rabbitmq-service remove,rabbitmq-service install,rabbitmq-service start,rabbitmq-plugins enable rabbitmq_management。
然後http://127.0.0.1:15672/
到底結束