Linux 安装rabbitMQ和php amqp扩展步骤详解

1、首先安装Erlang

// 添加erlang solutions源
wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm

// 强制忽略依赖直接使用rpm包
rpm -Uvh erlang-solutions-1.0-1.noarch.rpm --nodeps --force

// yum 安装erlang
yum install -y erlang

// 查看erlang版本
erl

2、安装rabbitMQ

// 官网
https://www.rabbitmq.com/

// 找到跟erlang匹配的rabbitmq包
https://www.rabbitmq.com/which-erlang.html

// 下载rpm包
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.9/rabbitmq-server-3.8.9-1.el7.noarch.rpm

// 安装
yum -y install rabbitmq-server-3.8.9-1.el7.noarch.rpm

4、开启rabbitMQ客户端管理工具

rabbitmq-plugins enable rabbitmq_management
// 重启
sudo /sbin/service rabbitmq-server restart

3、rabbitMQ常用命令

$ sudo chkconfig rabbitmq-server on  # 添加开机启动RabbitMQ服务
$ sudo /sbin/service rabbitmq-server start # 启动服务
$ sudo /sbin/service rabbitmq-server status  # 查看服务状态
$ sudo /sbin/service rabbitmq-server stop   # 停止服务
 
# 查看当前所有用户
$ sudo rabbitmqctl list_users
 
# 查看默认guest用户的权限
$ sudo rabbitmqctl list_user_permissions guest
 
# 由于RabbitMQ默认的账号用户名和密码都是guest。为了安全起见, 先删掉默认用户
$ sudo rabbitmqctl delete_user guest
 
# 添加新用户
$ sudo rabbitmqctl add_user username password
 
# 设置用户tag
$ sudo rabbitmqctl set_user_tags username administrator
 
# 赋予用户默认vhost的全部操作权限
$ sudo rabbitmqctl set_permissions -p / username ".*" ".*" ".*"
 
# 查看用户的权限
$ sudo rabbitmqctl list_user_permissions username

5、安装PHP amqp扩展

// 先安装依赖
wget https://github.com/alanxz/rabbitmq-c/archive/v0.10.0.tar.gz

tar zxvf v0.10.0.tar.gz

cd rabbitmq-c-0.10.0/

mkdir build && cd build

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/librabbitmq

cmake --build .

make && make install

// 下载amqp扩展
wget http://pecl.php.net/get/amqp-1.10.2.tgz

tar zxvf amqp-1.10.2.tgz

cd amqp-1.10.2

/usr/local/php/bin/phpize

// librabbitmq-dir后面接的是你刚安装的那个依赖的路径
./configure --with-php-config=/usr/local/php/bin/php-config --with-amqp --with-librabbitmq-dir=/usr/local/librabbitmq

make && make install

// 如果make的时候报这个/usr/bin/ld: cannot find -lrabbitmq 错误,表示找不到库文件librabbitmq.so,若是其它库文件,则是 cannot find -lxxx 了,其中 xxx 是库文件的名字。
// 先找下这个库文件的位置
1、find / -name librabbitmq.so

// 将库文件所在的路径加入到 /etc/ld.so.conf 尾部,并使之生效
2、sudo echo '/usr/local/librabbitmq/lib64/' >> /etc/ld.so.conf

// 刷新配置文件使之生效
3、sudo ldconfig

// 修改环境变量,加入库的文件路径
4、export LIBRARY_PATH=/usr/local/librabbitmq/lib64/:$LIBRARY_PATH

// 将上述 export 命令加入到配置文件 ~/.bashrc,使之永久生效。
5、echo 'LIBRARY_PATH=/usr/local/librabbitmq/lib64/:$LIBRARY_PATH' >> ~/.bashrc

// 刷新配置文件
6、source ~/.bashrc

参考链接:https://blog.csdn.net/zhouminit/article/details/94838657

原文地址:https://www.cnblogs.com/chenhaoyu/p/13925905.html