RabbitMQ初学之安装与常见问题记录

安装erl9.0

http://www.erlang.org/downloads otp_win64_20.0.exe

安装rabbitmq server

http://www.rabbitmq.com/install-windows.html rabbitmq-server-3.6.11.exe
安装完后默认自启动

环境变量

ERLANG_HOME,RABBITMQ_HOME,这两个值为软件的安装目录,Path里添加两个bin,成功后命令行输入erl,如果出现Eshell V6.1类似字样,说明成功,如果命令无法识别,重启试试。

Web管理界面

Rabbitmq有一个web管理界面:http://localhost:15672,账号密码都是guest,未配置的客户端默认使用该账号凭据,但仅限于访问本地,如果是网络访问则需要另外配置,添加一个新账号,比如admin,并赋予管理队列的权限。

常用命令

rabbitmq-plugins enable rabbitmq_management 开启插件
rabbitmq-service remove 移除服务
rabbitmq-service install 安装服务
rabbitmq-service start 或者 net start rabbitmq 启动服务
rabbitmq-service stop 或者 net stop rabbitmq 停止服务
rabbitmqctl status 查看服务状态
rabbitmq-server restart 重启服务

错误记录

运行客户端代码时的错误记录

连接被拒绝

C:\Program Files (x86)\RabbitMQ Server\rabbitmq_server-3.4.3\sbin>rabbitmqctl status Status of node rabbit@TPAJ05421843 ...
Error: unable to connect to node rabbit@TPAJ05421843: nodedown

DIAGNOSTICS

attempted to contact: [rabbit@TPAJ05421843]

rabbit@TPAJ05421843:
* connected to epmd (port 4369) on TPAJ05421843
* epmd reports: node 'rabbit' not running at all
other nodes on TPAJ05421843: ['RabbitMQ']
* suggestion: start the node

current node details:
- node name: 'rabbitmqctl-19884@TPAJ05421843'
- home dir: H:\
- cookie hash: PD4QQCYrf0TME9vIko3Xuw==

或者java端报错:connection refused

尝试过以下多种方法:
1、重新安装服务
Run RabbitMQ sbin command prompt as administrator.
rabbitmq-service remove
rabbitmq-service install
2、hosts文件中localhost与127.0.0.1映射

127.0.0.1      localhost

3、.erlang.cookie这个文件存在两个地方,user/admin/.erlang.cookie以及windows/.erlang.cookie,这两个文件内容要保持一致相同
4、如果公司网络有端口限制,防火墙只允许部分端口的话,比如说15672这个端口用不了,那么只有去修改rabbitmq config配置文件,默认配置文件在appdata/roaming/rabbitmq文件夹下,如果没有的话,手动创建,如果有的话默认内容为[].;复制rabbitmq.config.example文件中内容,其中有如下内容

%% {tcp_listeners,[5672]},

去掉listeners端口号左边两个百分号以及后边的逗号,这是erlang语法。
修改配置文件后,需要做以下几步方能使配置文件生效(操作需要在管理员权限下进行):
第一,停止stop服务
第二,安装install服务
第三,开启start服务
5、http://www.rabbitmq.com/troubleshooting.html 官方网站的问题记录
6、注意客户端代码中setHost("")的值是否指向正确,如果是在本地安装的rabbitmq服务,直接localhost即可
6、最终正确的适应我的解决方案:是改了计算机名,改短一点,http://blog.csdn.net/walle_panpan/article/details/53009222,当时的现状是打开服务对话框,手动启动rabbitmq,启动虽然成功,但过一会再点击查看状态还是停止状态,也就是无法正常启动rabbitmq服务,命令行会报这种错误,Applying plugin configuration to rabbitmq@(计算机名) failed ,重新改过计算机名后要重启电脑,在此之前,最好卸载干净当前的rabbitmq,重启后重新安装。

授权失败

Exception in thread "main" com.rabbitmq.client.AuthenticationFailureException

connection reset

解决方法就是在rabbitmq的web管理端添加新用户,注意不能使用默认的guest用户,并且给这个新用户赋予管理队列的权限;然后在java代码中添加

	factory.setUsername("admin");
	factory.setPassword("admin");

版本不对

unsupportedClassVersionError: unsupported major.minor version 52.0

解决方法就是升级jdk版本或者降版本
http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html 1.7版本jdk下载地址

参考文章:http://blog.csdn.net/zhousenshan/article/details/66478608

1、安装erlang 语言环境 安装依赖文件 yum install gcc glibc-devel make ncurses-devel openssl-devel xmlto 进入 http://www.erlang.org/download.html 选择源文件下载 wget http://www.erlang.org/download/otp_src_19.1.tar.gz tar zxvf otp_src_19.1.tar.gz cd otp_src_19.1 #./configure 如果报错 configure: error: Perl is required to generate v2 to v1 mib converter script configure: error: /bin/sh '/root/software/otp_src_17.1/lib/snmp/./configure' failed for snmp/. configure: error: /bin/sh '/root/software/otp_src_17.1/lib/configure' failed for lib 执行下面的: yum install perl #make && make install 安装完成以后,执行erl看是否能打开eshell,用’halt().’退出,注意后面的点号,那是erlang的结束符。 [root@localhost src]# erl  Erlang/OTP 17 [erts-6.1] [source] [64-bit] [async-threads:10] [hipe] [kernel-poll:false] Eshell V6.1  (abort with ^G)  2> 9+3.  12  3> halt(). 2、安装RabbitMQ  进入http://www.rabbitmq.com/download.html选择最新的源码包 #wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.5/rabbitmq-server-generic-unix-3.6.5.tar.xz #xz -d 你的文件.tar.xz #tar -xvf 你的文件.tar #cd rabbitmq-server-3.6.5 在etc/rabbitmq里面添加配置文件 vi etc/rabbitmq/rabbitmq.config 3、启动rabbitmq-server 运行rabbitmq: # ./sbin/rabbitmq-server 查看rabbitmq状态: # ./sbin/rabbitmqctl status 关闭rabbitmq: # ./sbin/rabbitmqctl stop 4、查看RabbitMQ服务启动的状态,并开启RabbitMQ的相应管理插件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值