🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 环境准备 [TOC] **jdk: jdk-8u191-linux-x64** **nginx: nginx-1.14.2** **mysql: mysql-5.7.24-1.el7.x86\_64** **redis: redis-5.0.3** **注意:****不同的操作系统和基础软件版本,安装或配置可能会存在差异,本文只保证如上所列版本安装和配置的正确性。** * * * 我在/mnt下挂载了一个数据盘,基础软件我都先下载到此目录后再安装,如果你没有此目录的话,可以mkdir创建一个或根据自己的实际情况调整。 ## 一、安装jdk 1). 使用root用户,在/mnt下创建java目录。 运行命令:**mkdir /mnt/java** 2). 进入/mnt/java目录,下载jdk安装包。 运行命令:**wget https://download.oracle.com/otn-pub/java/jdk/8u191-b12/2787e4a523244c269598db4e85c51e0c/jdk-8u191-linux-x64.tar.gz** 3). 在/mnt/java目录下,解压安装包。 运行命令:**tar -zxvf jdk-8u191-linux-x64.tar.gz** 解压后得到文件jdk1.8.0\_191。 4). 在/usr/local目录下创建java目录。 运行命令:**mkdir /usr/local/java** 5). 将/mnt/java/jdk1.8.0\_191移动到/usr/local/java目录下。 运行命令:**mv /mnt/java/jdk1.8.0\_191 /usr/local/java/.** 6). 配置JDK环境变量。 运行命令:**vi /etc/profile** 在文件末尾添加如下内容,并保存: * * * export JAVA\_HOME=/usr/local/java/jdk1.8.0\_191 export CLASSPATH=.:$JAVA\_HOME/lib:$JAVA\_HOME/lib/tools.jar export PATH=$PATH:$JAVA\_HOME/bin * * * 7). 让配置生效。 运行命令:**source /etc/profile** 8). 查看JDK环境变量是否配置成功。 运行命令:**java -version** 如果出现java版本信息,则说明JDK环境变量配置成功。 ## 二、安装nginx 1). 使用root用户,在/mnt下创建nginx目录。 运行命令:**mkdir nginx** 2). 进入/mnt/nginx目录,下载nginx安装包。 运行命令: **wget ****http://nginx.org/download/nginx-1.14.2.tar.gz** 3). 在/mnt/nginx目录下,解压安装包。 运行命令:**tar -zxvf nginx-1.14.2.tar.gz** 解压后得到文件nginx-1.14.2。 4). 在安装nginx之前,请确保系统中已经安装过了相关组件:gcc、openssl、pcre、zlib,否则需要先安装相关组件。 5). gcc默认是安装的,可通过命令:gcc -v查看,如已安装则跳过此步,否则执行如下命令安装。 运行命令:**yum install gcc-c++** 6). 安装openssl,如已安装则跳过此步。 运行命令: **yum -y install openssl openssl-devel** 7). 安装pcre,如已安装则跳过此步。 运行命令:**yum -y install pcre pcre-devel** 8). 安装zlib,如已安装则跳过此步。 运行命令:**yum -y install zlib zlib-devel** 9). 安装nginx,进入/mnt/nginx/nginx-1.14.2目录。 运行命令:**./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --with-http\_stub\_status\_module --with-http\_ssl\_module --with-http\_realip\_module  && make && make install** \--prefix nginx的安装根路径 \--sbin nginx的启动程序路径 \--conf-path nginx的配置路径 \--with-\* nginx需要加载的模块,如果需要nginx支持https,则需要加入**http\_ssl\_module**模块 以上配置参数可根据自身实际情况相应调整。 10). 配置nginx环境变量。 运行命令:**vi /etc/profile** 在文件末尾添加如下内容: * * * export NGINX\_HOME=/usr/local/nginx export PATH=$PATH:$NGINX\_HOME/sbin * * * 11). 让配置生效。 运行命令:**source /etc/profile** 12). 设置nginx为系统服务。 在/lib/systemd/system目录下创建nginx.service文件, 运行命令:**vi /lib/systemd/system/nginx.service** 输入如下内容,nginx启动程序路径根据自身实际情况调整: * * * \[Unit\] Description=nginx service After=network.target \[Service\] Type=forking ExecStart=**/usr/local/nginx/sbin/nginx** ExecReload=**/usr/local/nginx/sbin/nginx** -s reload ExecStop=**/usr/local/nginx/sbin/nginx** -s quit PrivateTmp=true \[Install\] WantedBy=multi-user.target * * * 13). 设置开机自启动。 运行命令:**systemctl enable nginx** 14). 以后就可使用如下命令,来管理nginx了: * * * \# systemctl start nginx               启动服务 \# systemctl stop nginx               停止服务 \# systemctl restart nginx             重新启动服务 \# systemctl list-units --type=service     查看所有已启动的服务 \# systemctl status nginx                查看服务当前状态 \# systemctl enable nginx               设置开机自启动 #systemctl disable nginx               停止开机自启动 * * * ## 三、安装mysql 1). 使用root用户,在/mnt下创建mysql目录。 运行命令:**mkdir mysql** 2). 进入/mnt/mysql目录,下载mysql安装包。 运行命令:**wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-1.el7.x86\_64.rpm-bundle.tar** 3). 在/mnt/mysql目录下,解压安装包。 运行命令:**tar -xvf mysql-5.7.24-1.el7.x86\_64.rpm-bundle.tar** 解压后会得到多个rpm包,这里我只安装mysql server,但它需要依赖其它几个包,依赖关系如下: * * * mysql-community-common-5.7.24-1.el7.x86\_64.rpm   mysql-community-libs-5.7.24-1.el7.x86\_64.rpm             --(依赖于common)   mysql-community-client-5.7.24-1.el7.x86\_64.rpm          --(依赖于libs)   mysql-community-server-5.7.24-1.el7.x86\_64.rpm         --(依赖于client、common)  * * * 4). 安装mysql server,依次运行如下命令,顺序不能颠倒: **rpm -ivh mysql-community-common-5.7.24-1.el7.x86\_64.rpm** **rpm -ivh mysql-community-libs-5.7.24-1.el7.x86\_64.rpm** **rpm -ivh mysql-community-client-5.7.24-1.el7.x86\_64.rpm** **rpm -ivh mysql-community-server-5.7.24-1.el7.x86\_64.rpm** 我在安装过程中出现了两个错误,如果你也有出现同样错误,可按照如下方法解决,否则跳过此节。 **错误一如下:** ![](//upload-images.jianshu.io/upload_images/15986377-7370221cd44c4edf.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp) 请先卸载mariadb-libs-1:5.5.60-1.el7\_5.x86\_64(还可通过命令rpm \-qa | grep mariadb查看安装了mariadb哪些包,也可一起卸载掉)。 运行命令: **rpm -e mariadb-libs-1:5.5.60-1.el7\_5.x86\_64 --nodeps** **错误二如下:** ![](//upload-images.jianshu.io/upload_images/15986377-31dea5983fc4d471.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp) 请先安装libaio依赖包。 运行命令:**yum install libaio.x86\_64** 5). 初始化mysql,有两种方式可选择,此处我选择方式一。 运行命令: **#方式一:mysql的root用户创建随机密码** **mysqld --initialize --user=mysql** **\# 方式二:不为mysql的root用户创建密码** **mysqld --initialize-insecure --user=mysql** 如果当前用户是root,且没有创建mysql用户则需要带--user参数,且值为mysql。如果当前用户是mysql,则可不带--user参数。 按方式一执行后,会在/var/log/mysqld.log文件里生成随机密码,此处为:Kp.Qsu3aXWRI,如下所示: ![](//upload-images.jianshu.io/upload_images/15986377-f79076811c897a3f.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp) 6). 设置开机启动。 运行命令: **systemctl enable mysqld** 以后就可以使用如下命令,来启停mysql了: * * * \# systemctl start mysqld              启动服务 \# systemctl stop mysqld                停止服务 \# systemctl restart mysqld              重新启动服务 \# systemctl list-units --type=service     查看所有已启动的服务 \# systemctl status mysqld              查看服务当前状态 \# systemctl enable mysqld             设置开机自启动 #systemctl disable mysqld             停止开机自启动 * * * 7). 启动mysql。 运行命令:**systemctl start mysqld** 8). 登录mysql。 运行命令:**mysql -uroot -p** 输入刚才生成的密码。 9). 登录之后,修改root用户密码(否则有些命令执行不了,需要修改密码后才能执行)。 运行命令:**alter user 'root'@'localhost' identified by '密码';** 如果要root用户在任何机器都可连接mysql,需要将localhost改为%。 10). 创建数据库。 运行命令:**create database 数据库名 default charset utf8 collate utf8\_general\_ci;** 11). 创建用户。 运行命令:**create user '用户名'@'%' identified by '密码';** 查看用户命令:**select user,host from mysql.user;** 12). 为用户分配某个数据库的权限。 运行命令:**grant all privileges on 数据库名.\* to '用户名'@'%' with grant option;** 13). 刷新权限。 运行命令:**flush privileges;** 查看用户权限命令: **show grants for 用户名;** 14). 设置表名不区分大小写。 运行命令: **show variables like "%case%";** 如果lower\_case\_file\_system=OFF,则需要修改lower\_case\_table\_names=1,修改/etc/my.cnf文件。 在操作系统命令行下,执行:**vi /etc/my.cnf** 在\[mysqld\]节点最后添加如下一行: lower\_case\_table\_names=1 最后重启mysql服务,让设置生效,运行命令:**systemctl restart mysqld** ## 四、安装redis 1). 使用root用户,在/mnt下创建redis目录。 运行命令:**mkdir redis** 2). 进入/mnt/redis目录,下载redis安装包。 运行命令:**wget http://download.redis.io/releases/redis-5.0.3.tar.gz** 3). 在/mnt/redis目录下,解压安装包。 运行命令:**tar -zxvf redis-5.0.3.tar.gz** 解压后得到文件redis-5.0.3。 4). 进入redis-5.0.3目录, 编译redis。 运行命令:**make** 5). 编译成功后,在/usr/local目录下创建redis目录。 运行命令:**mkdir /usr/local/redis** 6). 将/mnt/redis/redis-5.0.3移动到/usr/local/redis目录下。 运行命令:**mv /mnt/redis/redis-5.0.3 /usr/local/redis/.** 7). 配置redis。 运行命令:**vi /usr/local/redis/redis-5.0.3/redis.conf** * * * 修改daemonize属性的值为:**yes **            #设置redis为后台启动 修改requirepass属性的值为:**密码**          #设置redis的连接密码 修改bind属性的值为:**0.0.0.0**                  #设置redis服务绑定的ip,默认127.0.0.1,只能本机连接,0.0.0.0表示任何地址都可连接 * * * 8). 配置redis环境变量。 运行命令:**vi /etc/profile** 在文件末尾添加如下内容: * * * export REDIS\_HOME=/usr/local/redis/redis-5.0.3 export PATH=$PATH:$REDIS\_HOME/src * * * 9). 让配置生效。 运行命令:**source /etc/profile** 10). 设置redis为系统服务。 在/lib/systemd/system目录下创建redis.service文件, 运行命令:**vi /lib/systemd/system/redis.service** 输入如下内容,redis启动程序和配置路径根据自身实际情况调整: * * * \[Unit\] Description=RedisIn-Memory Data Store After=network.target \[Service\] ExecStart=**/usr/local/redis/redis-5.0.3/src/redis-server /usr/local/redis/redis-5.0.3/redis.conf  --daemonize no** ExecStop=**/usr/local/redis/redis-5.0.3/src/redis-cli shutdown** \[Install\] WantedBy=multi-user.target * * * 11). 加入开机自启动。 运行命令:**systemctl enable redis** 以后就可使用如下命令,来启停redis了: * * * \# systemctl start redis               启动服务 \# systemctl stop redis               停止服务 \# systemctl restart redis             重新启动服务 \# systemctl list-units --type=service     查看所有已启动的服务 \# systemctl status redis                查看服务当前状态 \# systemctl enable redis               设置开机自启动 #systemctl disable redis               停止开机自启动