首页 文章 精选 留言 我的

精选列表

搜索[centos],共5623篇文章
优秀的个人博客,低调大师

centos+scala2.11.4+hadoop2.3+spark1.3.1环境搭建

一、Java安装 1、安装包准备: 首先到官网下载jdk,http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html,我下载jdk-7u79-linux-x64.tar.gz,下载到主目录 2、解压安装包 通过终端在/usr/local目录下新建java文件夹,命令行: sudo mkdir /usr/local/java 然后将下载到压缩包拷贝到java文件夹中,命令行: 进入jdk压缩包所在目录 cp jdk-7u79-linux-x64.tar.gz /usr/local/java 然后进入java目录,命令行: cd /usr/local/java 解压压缩包,命令行: sudo tar xvf jdk-7u79-linux-x64.tar.gz 然后可以把压缩包删除,命令行: sudo rm jdk-7u79-linux-x64.tar.gz 3、设置jdk环境变量 这里采用全局设置方法,就是修改etc/profile,它是是所有用户的共用的环境变量 sudo vi /etc/profile 打开之后在末尾添加 export JAVA_HOME=/usr/local/java/jdk1.7.0_79 export JRE_HOME=/usr/local/java/jdk1.7.0_79/jre export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin: $PATH 使profile生效 source /etc/profile 4、检验是否安装成功 在终端 java -version 显示如下 java version "1.7.0_79"Java(TM) SE Runtime Environment (build 1.7.0_79-b15)Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode) PS:后来发现直接rpm包jdk-7u79-linux-x64.rpm桌面双击安装也OK,^_^ 二、scala2.11.4安装 1、安装包准备: 首先到官网下载scala,http://www.scala-lang.org/,下载scala-2.11.4.tgz,并复制到/usr/bib 2、解压安装包 tar -zxf scala-2.11.4.tgz 3、设置scala环境变量 这里采用全局设置方法,就是修改etc/profile,它是是所有用户的共用的环境变量 sudo vi /etc/profile 打开之后在末尾添加 export SCALA_HOME=/usr/lib/scala-2.11.4export PATH=$SCALA_HOME/bin:$PATH 使profile生效 source /etc/profile 4、检验是否安装成功 在终端 scala -version 显示如下 Scala code runner version 2.11.4 -- Copyright 2002-2013, LAMP/EPFL 三、hadoop2.3安装 1、安装包准备: hadoop版本有点混乱,除了http://hadoop.apache.org/有众多版本之外,还有Cloudera公司的CDH版本,请从观望下载hadoop-2.3.0.tar.gz或者下载CDH版本hadoop-2.3.0-cdh5.0.0.tar.gz,本文环境是在hadoop-2.3.0-cdh5.0.0.tar.gz之上建立。 2、解压安装包 下载安装包之后复制到/usr目录。 tar -zxf hadoop-2.3.0-cdh5.0.0.tar.gz 解压后生成hadoop-2.3.0-cdh5.0.0,重命名为hadoop-2.3.0。 3、配置环境 这里采用全局设置方法,就是修改etc/profile,它是是所有用户的共用的环境变量 sudo vi /etc/profile 打开之后在末尾添加 export HADOOP_HOME=/home/zero/hadoop/hadoop-2.3.0 export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin 使profile生效 source /etc/profile 3、建立hadoop用户 useradd hadoop passwd hadoop 3、配置SSH免登录 su hadoop //切换到hadoop用户目录下 ssh-keygen-t rsa(一路回车 生成密钥) cd/home/hadoop/.ssh/ scp id_rsa.pub hadoop@slave1:/home/hadoop/.ssh/ mv id_rsa.pub authorized_keys 四、spark1.3.1安装 1、安装包准备: spark官网下载spark-1.3.1-bin-hadoop2.3.tgz。 2、解压安装包 下载安装包之后复制到/usr目录。 tar -zxf spark-1.3.1-bin-hadoop2.3.tgz 解压后生成spark-1.3.1-bin-hadoop2.3,重命名为spark-1.3.1-hadoop2.3。 3、配置环境 这里采用全局设置方法,就是修改etc/profile,它是是所有用户的共用的环境变量 sudo vi /etc/profile 打开之后在末尾添加 export SPARK_HOME=/usr/spark-1.3.1-hadoop2.3export PATH=$SPARK_HOME/bin:$PATH 使profile生效 source /etc/profile 4、配置环境 这里采用全局设置方法,就是修改etc/profile,它是是所有用户的共用的环境变量 sudo vi /etc/profile 打开之后在末尾添加 export SPARK_HOME=/usr/spark-1.3.1-hadoop2.3export PATH=$SPARK_HOME/bin:$PATH 使profile生效 source /etc/profile 配置Spark环境变量 cd $SPARK_HOME/confcp spark-env.sh.template spark-env.sh vi spark-env.sh 添加以下内容: export JAVA_HOME=/usr/local/java-1.7.0_79 export HADOOP_HOME=/usr/hadoop-2.3.0 export HADOOP_CONF_DIR=/etc/hadoop/conf export SCALA_HOME=/usr/lib/scala-2.11.4 export SPARK_HOME=/usr/spark-1.3.1-hadoop2.3 export SPARK_MASTER_IP=127.0.0.1 export SPARK_MASTER_PORT=7077 export SPARK_MASTER_WEBUI_PORT=8099 export SPARK_WORKER_CORES=3 //每个Worker使用的CPU核数 export SPARK_WORKER_INSTANCES=1 //每个Slave中启动几个Worker实例 export SPARK_WORKER_MEMORY=10G //每个Worker使用多大的内存 export SPARK_WORKER_WEBUI_PORT=8081 //Worker的WebUI端口号 export SPARK_EXECUTOR_CORES=1 //每个Executor使用使用的核数 export SPARK_EXECUTOR_MEMORY=1G //每个Executor使用的内存 export SPARK_CLASSPATH=/usr/spark-1.3.1-hadoop2.3/lib/sequoiadb-driver-1.12.jar:/usr/spark-1.3.1-hadoop2.3/lib/spark-sequoiadb_2.11.2-1.12.jar //使用巨衫数据库export SPARK_CLASSPATH=$SPARK_CLASSPATH:$CLASSPATHexport LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$HADOOP_HOME/lib/nativ 配置Slave cp slaves.template slavesvi slaves 添加以下内容:localhost 5、启动Spark Master cd $SPARK_HOME/sbin/./start-master.sh 6、启动Spark Slave cd $SPARK_HOME/sbin/./start-slaves.sh

优秀的个人博客,低调大师

使用虚拟机在CentOS上安装部署数据库使用

镜像下载、域名解析、时间同步请点击 阿里云开源镜像站 本节描述使用数据库的基本操作。通过此节您可以完成创建数据库、创建表及向表中插入数据和查询表中数据等操作。 2.1 前提条件 ●openGauss正常运行。 ●由于本实验是对openGauss数据库的基本使用,需要掌握openGauss数据库的基本操作和SQL语法,openGauss数据库支持SQL2003标准语法,数据库基本操作参见附录二。 2.2 操作步骤 步骤 1以操作系统用户omm登录数据库主节点。 [root@ecs-c9bf script]# su - omm 若不确定数据库主节点部署在哪台服务器,请确认连接信息。 步骤 2启动服务。 启动服务命令: [omm@ecs-c9bf ~]$ gs_om -t start Starting cluster. ========================================= ========================================= Successfully started. 步骤 3连接数据库。 [omm@ecs-c9bf ~]$ gsql -d postgres -p 26000 -r 当结果显示为如下信息,则表示连接成功。 gsql ((openGauss 1.1.0 build 290d125f) compiled at 2020-05-08 02:59:43 commit 2143 last mr 131 Non-SSL connection (SSL connection is recommended when requiring high-security) Type "help" for help. postgres=# 其中,postgres为openGauss安装完成后默认生成的数据库。初始可以连接到此数据库进行新数据库的创建。26000为数据库主节点的端口号,需根据openGauss的实际情况做替换,请确认连接信息获取。 引申信息: ●使用数据库前,需先使用客户端程序或工具连接到数据库,然后就可以通过客户端程序或工具执行SQL来使用数据库了。 ● gsql是openGauss数据库提供的命令行方式的数据库连接工具。 步骤 4第一次连接数据库时,需要先修改omm用户密码,新密码修改为Bigdata@123(建议用户自定义密码)。 postgres=# alter role omm identified by 'Bigdata@123' replace 'openGauss@123'; ALTER ROLE 步骤 5创建数据库用户。 默认只有openGauss安装时创建的管理员用户可以访问初始数据库,您还可以创建其他数据库用户帐号。 postgres=# CREATE USER joe WITH PASSWORD "Bigdata@123"; 当结果显示为如下信息,则表示创建成功。 CREATE ROLE 如上创建了一个用户名为joe,密码为Bigdata@123的用户。 步骤 6创建数据库。 postgres=# CREATE DATABASE db_tpcc OWNER joe; 当结果显示为如下信息,则表示创建成功。 CREATE DATABASE 创建完db_tpcc数据库后,就可以按如下方法退出postgres数据库,使用新用户连接到此数据库执行接下来的创建表等操作。当然,也可以选择继续在默认的postgres数据库下做后续的体验。 退出postgres数据库。 postgres=# \q 使用新用户连接到此数据库。 [omm@ecs-c9bf ~]$ gsql -d db_tpcc -p 26000 -U joe -W Bigdata@123 -r 当结果显示为如下信息,则表示连接成功。 gsql ((openGauss 1.1.0 build 290d125f) compiled at 2020-05-08 02:59:43 commit 2143 last mr 131 Non-SSL connection (SSL connection is recommended when requiring high-security) Type "help" for help. db_tpcc=> 步骤 7创建SCHEMA。 db_tpcc=> CREATE SCHEMA joe AUTHORIZATION joe; 当结果显示为如下信息,则表示创建SCHEMA成功。 CREATE SCHEMA 步骤 8创建表。 创建一个名称为mytable,只有一列的表。字段名为firstcol,字段类型为integer。 db_tpcc=> CREATE TABLE mytable (firstcol int); CREATE TABLE 步骤 9向表中插入数据: db_tpcc=> INSERT INTO mytable values (100); 当结果显示为如下信息,则表示插入数据成功。 INSERT 0 1 查看表中数据: db_tpcc=> SELECT * from mytable; firstcol ---------- 100 (1 row) 步骤 10退出postgres数据库。 postgres=# \q 本实验结束。 原文链接:Gauss松鼠会

优秀的个人博客,低调大师

阿里云服务器 Centos 7 如何搭建Java Web开发环境?

首选要有一台云服务器,开始部署开发环境,还没有购买的同学,请移至阿里云官网购买(记得领取代金券礼包,希望对你有所帮助!) 准备工作 安装目录 我们创建如下路径/usr/develop,然后在develop目录下面创建java,tomcat和mysql三个目录即可。 配置JDK 理解wget命令 wget命令是一个从网络上下载文件的自由工具,它支持http协议,https协议和ftp协议。因此我们可以通过wget命令来下载JDK。wget的格式:wget 要下载的url。下载的目录为当前执行wget命令的目录。 一.安装 JDK 1.首先查看一下系统是32位的还是64位的 执行: uname -m 2.去Oracle官网下载对应版本的JDK JDK下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 3.下载完后上传到云服务器,然后解压 tar -zxvf jdk-8u181-linux-x64.tar.gz4.将解压后的文件夹剪切到usr/local/jdk1.8 目录下 mv jdk1.8.0_181 /usr/local/jdk1.8/ 5.配置环境变量 vim /etc/profile 在export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL下面添加如下代码: #jdk export JAVA_HOME=/usr/local/jdk1.8/jdk1.8.0_181 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar Java jdk环境变量配置 6.追加完成后更新配置 source /etc/profile 7.查看是否安装成功 java -version 查看是否安装成功 二、安装MySqlServer 1、下载 Mysql yum包 yum包文件在mysql官网里可以找到http://dev.mysql.com/downloads/repo/yum/ 一般默认是显示最新版mysql的noarch.rpm文件 下载到本地再上传到服务器,或者使用wget 直接下载 这里我们下载个5.7版的文件 wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm2、安转yum软件源 执行如下命令安装 rpm -Uvh mysql57-community-release-el7-10.noarch.rpm安装yum软件源 3、安装mysql服务端 yum install -y mysql-community-server 安装mysql服务端 4、启动mysql service mysqld start 启动 5、检查mysql 的运行状态 service mysqld status 检查启动状态 6、修改临时密码 Mysql5.7默认安装之后root是有密码的。 7 、获取MySQL的临时密码 为了加强安全性,MySQL5.7为root用户随机生成了一个密码,在error log中,error log的位置,默认是 /var/log/mysqld.log。 只有启动过一次mysql才可以查看临时密码 grep 'temporary password' /var/log/mysqld.log (如果之前安装过MySQL则这里可能会有多个密码,用最后一个,注意这个密码输入时是可以粘贴的) 查看临时密码 这里的密码是:BjBqe67xid.l 8、 登陆并修改密码 使用默认的密码登陆 mysql -uroot -p(这是一个MySQL的以密码登录root用户的命令) mysql -uroot -p BjBqe67xid.l 用该密码登录到服务端后,必须马上修改密码再执行一些数据库操作,不然会报如下错误: mysql> select @@log_error; ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement. 修改密码 mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; 修改密码 如何解决ERROR 1819 (HY000): Your password does not satisfy the current policy requirements呢? 按如下操作 必须修改两个全局参数:首先,修改validate_password_policy参数的值 mysql> set global validate_password_policy=0; 再修改密码的长度 mysql> set global validate_password_length=1; 修改长度 再次执行修改密码就可以了 mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; 9、授权其他机器登陆 mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root密码' WITH GRANT OPTION mysql> flush privileges; 另外需要登录阿里云控制台,配置一下安全组: 配置安全组 这样本机电脑就可以连接远程服务器的mysql数据库了。 至此安装结束! 另外常用配置,①取消大小写区分: vim /etc/my.cnf 在后面追加: lower_case_table_names=1 修改后需要重启一下 service mysqld restart 【参考】参考MySQL官网安装指引: https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/ 三、安装Tomcat 1、下载Tomcat9压缩包 http://tomcat.apache.org/download-90.cgi 下载tar.gz压缩包 2、解压以及新建目录 cd /home/ tar -zxvf apache-tomcat-9.0.14.tar.gz cd /usr/local/ mkdir tomcat mv /home/apache-tomcat-9.0.14/ /usr/local/tomcat/ 3、配置tomcat server.xml vim /usr/local/tomcat/apache-tomcat-9.0.14/conf/server.xml server.xml可以配置端口,编码以及配置项目等等,我们这里就配置一个端口,把默认的8080,修改成80 这里 我们把8080端口改成80,然后保存退出; 4、配置防火墙,开放80端口 firewall-cmd --zone=public --add-port=80/tcp --permanent firewall-cmd --reload 5、启动tomcat cd /usr/local/tomcat/apache-tomcat-9.0.14/bin/ ./startup.sh Using CATALINA_BASE: /usr/local/tomcat/apache-tomcat-9.0.14Using CATALINA_HOME: /usr/local/tomcat/apache-tomcat-9.0.14Using CATALINA_TMPDIR: /usr/local/tomcat/apache-tomcat-9.0.14/tempUsing JRE_HOME: /usr/local/jdk1.8/jdk1.8.0_181Using CLASSPATH: /usr/local/tomcat/apache-tomcat-9.0.14/bin/bootstrap.jar:/usr/local/tomcat/apache-tomcat-9.0.14/bin/tomcat-juli.jarTomcat started.说明启动成功

优秀的个人博客,低调大师

记一次centos网卡严重丢包现象(ethtool的使用)

简介 事情是这样的,我买了一个newifi路由器,之后准备将家里的网络重新部署一下,所以就把我的蜗牛星际停了,之后把网络从以前的极路由连接到newifi下,突然发现丢包严重,而且不是一般的严重,几乎丢包率达到70%以上而且ssh更本链接不上,我以为是安装了docker,太多网桥的关系,所以把docker停了,把能开机启动的服务全部停了,但是网卡丢包依然很严重,于是不停百度,百度到怀疑人生,从网线到路由器全部排查了一遍,后来看到一句话 蜗牛星际千兆网卡丢包严重 我终于想起来,蜗牛星际网卡是锁死在百兆上的,因为在极路由下,极路由是百兆的,所以网卡自动协商为百兆,但是在新路由下就不一样了,新路由是千兆的,网卡会自动协商成千兆,所以就造成了丢包严重,那么只要把网卡的速率改为百兆就好了 改网卡速率为百兆 首先看下网卡的信息,因为写这个博客的时候我已经解决这个问题了,所以之前的网卡信息我不能截图拍照下来了,但是你可以使用下面这个命令查看你的网卡信息 ethtool enp4s0 现在你可以看到我的网卡是百兆的,之前丢包的时候是千兆而且是自动协商模式的 ~ ethtool enp4s0 Settings for enp4s0: Supported ports: [ TP ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Supported pause frame use: No Supports auto-negotiation: Yes Supported FEC modes: Not reported Advertised link modes: Not reported Advertised pause frame use: No Advertised auto-negotiation: No Advertised FEC modes: Not reported Speed: 100Mb/s Duplex: Full Port: Twisted Pair PHYAD: 1 Transceiver: internal Auto-negotiation: off MDI-X: off (auto) Supports Wake-on: pumbg Wake-on: g Current message level: 0x00000007 (7) drv probe link Link detected: yes 也就是Auto-negotiation这里是on的 之后我们使用下面命令修改掉网卡速率 ethtool -s enp4s0 speed 100 duplex full autoneg off 接着查看网卡信息就是百兆的了,之后测试丢包就没有了 欢迎关注Bboysoul的博客www.bboysoul.com Have Fun

优秀的个人博客,低调大师

CentOS6.9安装RabbitMQ和源码编译安装php的RabbitMQ扩展

1.安装依赖 yum install make gcc gcc-c++ build-essential openssl openssl-devel unixODBC unixODBC-devel kernel-devel m4 ncurses-devel 2.安装Erlang 查看yum中Erlang版本 yum list erlang erlang.x86_64 R14B-04.3.el6 RabbitMQ3.7.9要求Erlang版本不低于19.3.6.4,因此要么设置新的yum源,要么下载新版源码包自己安装 wget -c http://erlang.org/download/otp_src_21.2.tar.gz tar -zxvf otp_src_21.2.tar.gz cd otp_src_21.2 配置检查 ./configure --prefix=/usr/local/erlang 配置检查后若提示 xsltproc is missing. yum install libxslt 配置检查后若提示 fop is missing. yum install fop 编译,安装 make -j4# cpu核心数 make install 配置Erlang环境变量: vim /etc/profile 输入下面配置保存退出 export PATH=/usr/local/erlang/bin:$PATH 立即生效 source /etc/profile 软链 ln -s /usr/local/erlang/bin/erl /usr/bin/erl 测试是否安装成功 [root@localhost otp_src_21.2]# erl Erlang/OTP 21 [erts-10.2] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe] 3.安装RabbitMQ 下载 wget -c https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.9/rabbitmq-server-generic-unix-3.7.9.tar.xz 解压 [root@localhost src]# xz -d rabbitmq-server-generic-unix-3.7.9.tar.xz -bash: xz: command not found [root@localhost src]# yum install xz tar -xvf rabbitmq-server-generic-unix-3.7.9.tar cd /usr/local ln -sv /usr/local/src/rabbitmq_server-3.7.9 rabbitmq 配置RabbitMQ环境变量 vim /etc/profile 输入下面配置保存退出 export PATH=/usr/local/erlang/bin:/usr/local/rabbitmq/sbin:$PATH 立即生效 source /etc/profile 配置RabbitMQ的man帮助文档: vim /etc/man.config 新增如下代码: MANPATH /usr/local/rabbitmq/share/man 后台运行RabbitMQ rabbitmq-server -detached 可能会出现一个警告:Warning: PID file not written; -detached was passed.可以忽略 查看运行状态 rabbitmqctl status 这个命令有可能遇到下面两个错误 错误1: [root@localhost sbin]# rabbitmqctl status escript: exception error: undefined function rabbitmqctl_escript:main/1 in function escript:run/2 (escript.erl, line 758) in call from escript:start/1 (escript.erl, line 277) in call from init:start_em/1 in call from init:do_boot/3 解决:ln -sv /usr/local/src/rabbitmq_server-3.7.9 rabbitmq时rabbitmq_server-3.7.9后面一定不要带/,去掉即可 错误2: [root@jmsite ~]# rabbitmqctl status Status of node rabbit@jmsite ... Error: unable to perform an operation on node 'rabbit@jmsite'. Please see diagnostics information and suggestions below. Most common reasons for this are: * Target node is unreachable (e.g. due to hostname resolution, TCP connection or firewall issues) * CLI tool fails to authenticate with the server (e.g. due to CLI tool's Erlang cookie not matching that of the server) * Target node is not running In addition to the diagnostics info below: * See the CLI, clustering and networking guides on http://rabbitmq.com/documentation.html to learn more * Consult server logs on node rabbit@jmsite DIAGNOSTICS =========== attempted to contact: [rabbit@jmsite] rabbit@jmsite: * connected to epmd (port 4369) on jmsite * epmd reports node 'rabbit' uses port 25672 for inter-node and CLI tool traffic * can't establish TCP connection to the target node, reason: timeout (timed out) * suggestion: check if host 'jmsite' resolves, is reachable and ports 25672, 4369 are not blocked by firewall Current node details: * node name: 'rabbitmqcli-71553-rabbit@jmsite' * effective user's home directory: /root * Erlang cookie hash: wZNzQI2x3CG+RG+812pquQ== 解决:将你的主机名写入/etc/hosts即可,这个答案很难找,网络上大家都反复转载修改cookie等等办法,如果你是单点rabbitmq,cookie的权限改了也没用,具体问题具体分析 停止 rabbitmqctl stop 4.设置开机启动 创建启动脚本 vim /etc/init.d/rabbitmq-server 写入如下配置 #!/bin/sh # # rabbitmq-server RabbitMQ broker # # chkconfig: - 80 05 # description: Enable AMQP service provided by RabbitMQ # ### BEGIN INIT INFO # Provides: rabbitmq-server # Required-Start: $remote_fs $network # Required-Stop: $remote_fs $network # Default-Start: 3 5 # Default-Stop: 0 1 2 6 # Description: RabbitMQ broker # Short-Description: Enable AMQP service provided by RabbitMQ broker ### END INIT INFO # Source function library. . /etc/init.d/functions PATH=/sbin:/usr/sbin:/bin:/usr/bin export HOME=/root NAME=rabbitmq-server DAEMON=/usr/local/rabbitmq/sbin/${NAME} CONTROL=/usr/local/rabbitmq/sbin/rabbitmqctl DESC=rabbitmq-server USER=root PID_FILE=/var/run/rabbitmq/pid #RABBITMQ_ENV=/usr/lib/rabbitmq/bin/rabbitmq-env START_PROG="daemon" LOCK_FILE=/var/lock/subsys/$NAME test -x $DAEMON || exit 0 test -x $CONTROL || exit 0 RETVAL=0 set -e [ -f /etc/default/${NAME} ] && . /etc/default/${NAME} #RABBITMQ_SCRIPTS_DIR=$(dirname "$RABBITMQ_ENV") #. "$RABBITMQ_ENV" ensure_pid_dir () { PID_DIR=`dirname ${PID_FILE}` if [ ! -d ${PID_DIR} ] ; then mkdir -p ${PID_DIR} chown -R ${USER}:${USER} ${PID_DIR} chmod 755 ${PID_DIR} fi } remove_pid () { rm -f ${PID_FILE} rmdir `dirname ${PID_FILE}` || : } start_rabbitmq () { status_rabbitmq quiet if [ $RETVAL = 0 ] ; then echo RabbitMQ is currently running else RETVAL=0 ensure_pid_dir set +e RABBITMQ_PID_FILE=$PID_FILE $START_PROG $DAEMON \ > "${RABBITMQ_LOG_BASE}/startup_log" \ 2> "${RABBITMQ_LOG_BASE}/startup_err" \ 0<&- & $CONTROL wait $PID_FILE >/dev/null 2>&1 RETVAL=$? set -e case "$RETVAL" in 0) echo SUCCESS if [ -n "$LOCK_FILE" ] ; then touch $LOCK_FILE fi ;; *) remove_pid echo FAILED - check ${RABBITMQ_LOG_BASE}/startup_\{log, _err\} RETVAL=1 ;; esac fi } stop_rabbitmq () { status_rabbitmq quiet if [ $RETVAL = 0 ] ; then set +e $CONTROL stop ${PID_FILE} \ > ${RABBITMQ_LOG_BASE}/shutdown_log \ 2> ${RABBITMQ_LOG_BASE}/shutdown_err RETVAL=$? set -e if [ $RETVAL = 0 ] ; then remove_pid if [ -n "$LOCK_FILE" ] ; then rm -f $LOCK_FILE fi else echo FAILED - check ${RABBITMQ_LOG_BASE}/shutdown_log, _err fi else echo RabbitMQ is not running RETVAL=0 fi } status_rabbitmq() { set +e if [ "$1" != "quiet" ] ; then $CONTROL status 2>&1 else $CONTROL status > /dev/null 2>&1 fi if [ $? != 0 ] ; then RETVAL=3 fi set -e } rotate_logs_rabbitmq() { set +e $CONTROL rotate_logs if [ $? != 0 ] ; then RETVAL=1 fi set -e } restart_running_rabbitmq () { status_rabbitmq quiet if [ $RETVAL = 0 ] ; then restart_rabbitmq else echo RabbitMQ is not runnning RETVAL=0 fi } restart_rabbitmq() { stop_rabbitmq start_rabbitmq } case "$1" in start) echo -n "Starting $DESC: " start_rabbitmq echo "$NAME." ;; stop) echo -n "Stopping $DESC: " stop_rabbitmq echo "$NAME." ;; status) status_rabbitmq ;; rotate-logs) echo -n "Rotating log files for $DESC: " rotate_logs_rabbitmq ;; force-reload|reload|restart) echo -n "Restarting $DESC: " restart_rabbitmq echo "$NAME." ;; try-restart) echo -n "Restarting $DESC: " restart_running_rabbitmq echo "$NAME." ;; *) echo "Usage: $0 {start|stop|status|rotate-logs|restart|condrestart|try-restart|reload|force-reload}" >&2 RETVAL=1 ;; esac exit $RETVAL 设置权限 chmod 755 /etc/init.d/rabbitmq-server 开机启动 chkconfig rabbitmq-server on 以服务的方式查看状态 [root@jmsite ~]# service rabbitmq-server status Status of node rabbit@jmsite ... [{pid,72802}, {running_applications, [{rabbit,"RabbitMQ","3.7.9"}, {os_mon,"CPO CXC 138 46","2.4.7"}, {rabbit_common, "Modules shared by rabbitmq-server and rabbitmq-erlang-client", "3.7.9"}, {ranch_proxy_protocol,"Ranch Proxy Protocol Transport","2.1.1"}, {ranch,"Socket acceptor pool for TCP protocols.","1.6.2"}, {ssl,"Erlang/OTP SSL application","9.1"}, {public_key,"Public key infrastructure","1.6.4"}, {asn1,"The Erlang ASN1 compiler version 5.0.8","5.0.8"}, {inets,"INETS CXC 138 49","7.0.3"}, {mnesia,"MNESIA CXC 138 12","4.15.5"}, {recon,"Diagnostic tools for production use","2.3.6"}, {xmerl,"XML parser","1.3.18"}, {jsx,"a streaming, evented json parsing toolkit","2.9.0"}, {crypto,"CRYPTO","4.4"}, {lager,"Erlang logging framework","3.6.5"}, {goldrush,"Erlang event stream processor","0.1.9"}, {compiler,"ERTS CXC 138 10","7.3"}, {syntax_tools,"Syntax tools","2.1.6"}, {sasl,"SASL CXC 138 11","3.3"}, {stdlib,"ERTS CXC 138 10","3.7"}, {kernel,"ERTS CXC 138 10","6.2"}]}, {os,{unix,linux}}, {erlang_version, "Erlang/OTP 21 [erts-10.2] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:64] [hipe]\n"}, ...... 5.设置web管理插件 启用插件 rabbitmq-plugins enable rabbitmq_management 查看插件列表 rabbitmq-plugins list 添加管理用户 rabbitmqctl add_user admin admin 修改密码命令 rabbitmqctl change_password admin admin 设置管理角色 rabbitmqctl set_user_tags admin administrator 设置权限 rabbitmqctl set_permissions -p / admin ".*" ".*" ".*" 访问web界面 http://ip_address:15672 当你看到下面截图中的登录框,说明你的安装成功了 输入用户名密码 6.安装php的rabbitmq扩展 下载,解压rabbitmq-c源码 wget -c https://github.com/alanxz/rabbitmq-c/archive/v0.9.0.tar.gz tar -zxvf v0.9.0.tar.gz 配置,编译,安装 cd rabbitmq-c-0.9.0/ mkdir build && cd build #这一步是在rabbitmq-c的根目录下创建一个build子目录 # 这一步是让cmake根据../CMakeList.txt,即rabbitmq-c的根目录下的CMakeList.txt创建Makefile文件 # Makefile文件会被创建到build目录中 cmake -DCMAKE_INSTALL_PREFIX=/usr/local/rabbitmq-c .. # 这一步是真正的build rabbitmq-c库的,注意,不要漏掉点 '.' cmake --build . --target install 库软链 ln -s /usr/local/rabbitmq-c/lib64 /usr/local/rabbitmq-c/lib 下载,解压amqp wget -c https://pecl.php.net/get/amqp-1.9.4.tgz tar -zxvf amqp-1.9.4.tgz cd amqp-1.9.4 生成confingure文件 /usr/local/php72/bin/phpize 配置检查,编译,安装 ./configure --with-php-config=/usr/local/php72/bin/php-config --with-amqp --with-librabbitmq-dir=/usr/local/rabbitmq-c make -j4 make install 安装完成 Installing shared extensions: /usr/local/php72/lib/php/extensions/no-debug-non-zts-20170718/ 查看扩展文件 [root@jmsite amqp-1.9.4]# ls /usr/local/php72/lib/php/extensions/no-debug-non-zts-20170718/ amqp.so memcached.so mongodb.so pdo_pgsql.so pgsql.so redis.so 将扩展加入php.ini echo "extension=amqp.so" >> /usr/local/php72/etc/php.ini 重启php,查看phpinfo(); 原文地址:https://www.jmsite.cn/blog-296.html

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

用户登录
用户注册