操作准备:准备三台虚拟机
安装 MySQL 服务
(1)准备好mysql目录上传软件压缩包并解压
cd /opt
mkdir mysql
tar xf mysql-boost-5.7.44.tar.gz
(2)安装mysql环境依赖包
yum -y install ncurses ncurses-devel bison cmake openssl-devel gcc gcc-c++ make
(3)创建一个mysql用户
(4)进入软件包目录进行配置软件模块
cd /opt/mysql/mysql-boost-5.7.44
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=boost \
-DWITH_SYSTEMD=1
(5)编译
make -j 2
(6)安装
make install
(7)修改/etc/my.cnf配置文件
先卸载mariadb,CentOS7默认情况下会安装mariadb
yum remove -y mariadb*
然后添加以下内容
[client]
port = 3306
socket=/usr/local/mysql/mysql.sock
[mysqld]
user = mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
character-set-server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket=/usr/local/mysql/mysql.sock
bind-address = 0.0.0.0
skip-name-resolve
max_connections=2048
default-storage-engine=INNODB
max_allowed_packet=16M
server-id = 1
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES
(8)修改 mysql 安装目录和 my.cnf 配置文件的属主属组
chown -R mysql:mysql /usr/local/mysql/
chown mysql:mysql /etc/my.cnf
(9)设置路径的环境变量
使用 echo 重定向输入到 /etc/profile 文件的末尾
echo 'export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib' >> /etc/profile
运行 /etc/profile 文件
source /etc/profile
(10)进入 /usr/local/mysql/bin/ 目录,进行初始化数据库
./mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data
(11)将 mysql 添加到 systemctl 服务管理并开启
cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
systemctl daemon-reload
systemctl start mysqld.service
systemctl enable mysqld
(12)修改 mysql 的登录密码并授权远程登录
可以查看当前数据库相关信息
show databases;
安装 php 服务
(1)上传 php 软件包到 /opt/php 目录下
mkdir php #在opt目录下面创建一个php目录用于存放php软件包
(2)安装 php 环境依赖包
yum -y install \
gd \
libjpeg libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel
(3)解压 php 软件包
tar xf php-7.1.10.tar.bz2
(4)配置软件模版
切换到 /opt/php-7.1.10/ 目录下
cd /opt/php-7.1.10/
配置软件相关文件、路径、信息(必须在 /opt/php-7.1.10/ 目录下执行)
./configure \
--prefix=/usr/local/php \
--with-mysql-sock=/usr/local/mysql/mysql.sock \
--with-mysqli \
--with-zlib \
--with-curl \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-fpm \
--enable-mbstring \
--enable-xml \
--enable-session \
--enable-ftp \
--enable-pdo \
--enable-tokenizer \
--enable-zip
(5)编译
make -j 2 #注意当前计算机最大支持运行的核的数量
(6)安装
make install
(7)将 php 的可执行程序文件放入路径环境变量的目录(用于系统识别)
创建软连接,用于路径优化
ln -s /usr/local/php/bin/* /usr/local/bin/
ln -s /usr/local/php/sbin/* /usr/local/sbin/
(8)调整主配置文件
cp /opt/php-7.1.10/php.ini-development /usr/local/php/lib/php.ini
vim /usr/local/php/lib/php.ini
修改1170行
修改939行——设置时区
(9)调整进程服务配置文件
cd /usr/local/php/etc/
cp php-fpm.conf.default php-fpm.conf
vim php-fpm.conf
修改17行——将pid的文件路径给打开
(10)调整扩展配置文件
cd /usr/local/php/etc/php-fpm.d/
cp www.conf.default www.conf
修改23、24行
修改36行——设置监听服务器地址
修改62行——修改允许访问的客户端地址
(11)创建php用户
useradd -M -s /sbin/nologin php
(12)启动php-fpm服务
cp /opt/php/php-7.1.10/sapi/fpm/php-fpm.service /usr/lib/systemd/system
systemctl daemon-reload
systemctl start php-fpm.service
systemctl enable php-fpm.service
查看端口
netstat -lntp | grep php
安装 Nginx 服务
(1)关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
vim /etc/sysconfig/selinux
(2)安装nginx环境依赖包
yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++ make
(3)准备好nginx目录上传软件压缩包并解压
cd /opt
mkdir nginx
tar xf nginx-1.12.0.tar.gz
(4)创建运行用户
useradd -M -s /sbin/nologin nginx
(5)进入软件包目录进行配置软件模块
cd nginx-1.12.0/
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module
(6)编译
make -j 2
(7)安装
make install
(8)将 nginx 的可执行程序文件放入路径环境变量的目录(用于系统识别)
创建软连接,用于路径优化
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
(9)添加 Nginx 系统服务
vim /lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
(10)添加权限并重启nginx服务
chmod 754 /lib/systemd/system/nginx.service
systemctl start nginx.service
systemctl enable nginx.service
(11)修改配置文件nginx.conf
重启nginx服务
systemctl restart nginx
(12)创建网页文件
mkdir -p /var/www/html
cd /var/www/html
vim test.php
文件内容
cd /usr/local/nginx/html/
vim zzr.html
文件内容
(13)nginx服务端安装rpcbind nfs-utils实现动态页面访问
yum install -y rpcbind nfs-utils
vim /etc/exports
共享文件
systemctl enable --now rpcbind nfs
exportfs -arv #在线发布
showmount -e #检查服务端
(14)php客户端
showmount -e
vim /etc/fstab
192.168.80.40:/var/www/html /var/www/html nfs defaults,_netdev 0 0
mkdir -p /ar/www/html #创建目录
mount -a #挂载目录