<span class="log-zd"><span class="log-close"><a title="隐藏目录"><i class="be be-cross"></i><strong>目录</strong></a></span></span>

1.1 部署LNMP架构说明

1.1.1 LNMP架构内容

  01.部署linux系统

  02.部署nginx网站服务

  03.部署mysql数据库服务

  04.部署php动态解析服务

1.1.2 配置LNMP架构步骤

  01.配置Nginx配置文件

  02.配置mysql数据库信息(SQL语句)

  03.配置wordpress博客网站

1.1.3 架构服务器串联

  01.数据库数据信息迁移(web服务器上的mysql数据 迁移到10.0.0.51 数据库服务器上)

  02.将本地储存数据挂载到NFS共享储存服务器里(共享储存用户上传的数据信息)

1.1.4 LNMP FastCGI知识说明

    工作原理讲解说明:

         ①. 用户请求的静态文件,由nginx服务自行处理,根据静态的location配置进行处理

             用户请求的动态文件,由php服务进行处理,根据动态的location配置进行处理

         ②. nginx服务接收到动态请求,会将请求抛送给fastcgi,类似于nginx服务接收动态请求的秘书,秘书会将动态请求送给PHP程序

         ③. PHP如果可以处理,会将处理结果直接通过fastcgi返回给nginx程序;如果不可以处理,还会请求后端数据库,最终再把处理结果返回给nginx

第2章 LNMP环境搭建步骤

2.1 部署linux系统

  基本优化(ip地址 yum更新 字符集)

  安全优化完成(iptables关闭  selinux关闭  tmp目录权限777)

2.2 部署nginx网站服务

2.2.1 检查软件安装的系统环境

2.2.2 安装nginx的依赖包(pcre-devel openssl-devel)

2.2.3 下载nginx软件

 ** 解压软件**

2.2.4 创建管理用户 www

2.2.5  nginx软件编译安装过程

2.2.5.1  注意

           注意顺序,顺序不对软件安装会出错

2.2.5.2  编译安装软件

  1、配置软件,在软件的解压目录中

编译参数说明:

<p class="a" style="margin: 1pt 0cm; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">
  <span lang="EN-US">--user/--group &nbsp; &nbsp; &nbsp; &nbsp;nginx</span><span style="font-family: '微软雅黑',sans-serif; mso-ascii-font-family: 宋体; mso-hansi-font-family: 宋体;">工作进程由哪个用户运行管理</span>
</p>

<p class="a" style="margin: 1pt 0cm; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">
  <span lang="EN-US">--with-http_stub_status_module&nbsp; &nbsp;&nbsp;</span><span style="font-family: '微软雅黑',sans-serif; mso-ascii-font-family: 宋体; mso-hansi-font-family: 宋体;">启动</span><span lang="EN-US">nginx</span><span style="font-family: '微软雅黑',sans-serif; mso-ascii-font-family: 宋体; mso-hansi-font-family: 宋体;">状态模块功能(用户访问</span><span lang="EN-US">nginx</span><span style="font-family: '微软雅黑',sans-serif; mso-ascii-font-family: 宋体; mso-hansi-font-family: 宋体;">的网络信息)</span>
</p>

<p class="a" style="margin: 1pt 0cm; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">
  <span lang="EN-US">--with-http_ssl_module &nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span style="font-family: '微软雅黑',sans-serif; mso-ascii-font-family: 宋体; mso-hansi-font-family: 宋体;">启动</span><span lang="EN-US">https</span><span style="font-family: '微软雅黑',sans-serif; mso-ascii-font-family: 宋体; mso-hansi-font-family: 宋体;">功能模块</span>
</p>

通过软件编译过程中的返回值是否正确,确认配置是否正确

         2、编译软件

         3、编译安装

2.2.6 创建软连接

2.2.7 精简化nginx.conf 主配置文件内容, 编写nginx配置文件

2.2.8 启动程序

检查端口信息

服务部署完成, 修改hosts解析文件,进行浏览器访问测试

至此软件安装完毕!

2.3 部署mysql数据库服务

2.3.1 下载mysql软件

这里使用的是5.6.34版本;在下载mysql的时候一定要注意与系统匹配的版本。

方法一:mysql官网下载地址

尽量使用ftp下载,http的下载方式较为繁琐。下载的时候选择与自己近的服务进行下载即可。

2.3.2 【二进制包方式】安装mysql数据库软件

2.3.2.1  解压二进制包软件?

2.3.2.2  创建储存目录管理用户mysql?

2.3.2.3  将解压后的二进制包放置到程序目录中?

将mysql解压后的程序包搬家到程序目录下,并创建软连接。

2.3.2.4  对mysql数据储存目录进行授权?

让mysql用户管理 /application/mysql/data

2.3.2.5  初始化数据库服务?

①始化参数说明:

<p class="a" style="margin: 1pt 0cm; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">
  <span lang="EN-US">--datadir&nbsp; </span><span style="font-family: '微软雅黑',sans-serif; mso-ascii-font-family: 宋体; mso-hansi-font-family: 宋体;">数据存放目录,数据存放在哪里</span>
</p>

<p class="a" style="margin: 1pt 0cm; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;">
  <span lang="EN-US">--user&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="font-family: '微软雅黑',sans-serif; mso-ascii-font-family: 宋体; mso-hansi-font-family: 宋体;">管理</span><span lang="EN-US">mysql</span><span style="font-family: '微软雅黑',sans-serif; mso-ascii-font-family: 宋体; mso-hansi-font-family: 宋体;">的用户,</span><span lang="EN-US">MySQL</span><span style="font-family: '微软雅黑',sans-serif; mso-ascii-font-family: 宋体; mso-hansi-font-family: 宋体;">使用的用户谁</span>
</p>

②【*****】判定初始化命令执行成功的方法

  1)确认返回值,看是否为0

     [root@web01 ~]# echo $? 

  2)确认输出的内容中有两个ok

  3)通过数据库初始化操作,在data目录中创建出默认的数据库信息和相关表信息

③初始化输出的内容信息

  mysql.server程序自带的启动脚本文件

2.3.2.6  将启动脚本文件复制到启动目录中?

      注意: 修改的是两个位置

  添加到开机自启动,让chkconfig 管理,能够开机自启动

2.3.2.7  设置mysql服务配置文件?

mysql默认配置文件保存位置

从软件中复制出来配置文件,使用软件中自带的配置文件即可

2.3.2.8  启动mysql服务?

2.3.2.9  检查端口信息,确认服务是否启动?

2.3.2.10     设置root用户密码信息?

2.3.2.11     测试

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

登录数据库命令简化方法

2.3.3 管理mysql数据库

2.3.3.1  查看数据库

2.3.3.2  查看数据表信息

Database changed +—————————+ | Tables_in_mysql | +—————————+ | columns_priv | | db | | event | | func | | general_log | | help_category | | help_keyword | | help_relation | | help_topic | | innodb_index_stats | | innodb_table_stats | | ndb_binlog_index | | plugin | | proc | | procs_priv | | proxies_priv | | servers | | slave_master_info | | slave_relay_log_info | | slave_worker_info | | slow_log | | tables_priv | | time_zone | | time_zone_leap_second | | time_zone_name | | time_zone_transition | | time_zone_transition_type | | user | +—————————+ 28 rows in set (0.00 sec)

2.3.3.3  退出数据库

数据库基础操作(数据库框架)

select user,host from user; —查看user表中指定信息,并且横行显示 select user,host from mysql.user; —查看可以登录mysql数据库的目录,以及都可以从哪里进行管理mysql数据库 grant all on . to user@'host' identified by 'clsn123'; —创建用户 grant all on . to Old_Boy@'localhost' identified by 'clsn123'; —创建用户(大写用户) drop user 'user'@'host'; flush privileges; — 刷新权限

2.4 部署php服务

2.4.1 解决PHP软件的依赖关系(14个依赖包)

2.4.1.1  基于base源的个依赖包

检查的方法一:rpm

检查的方法二:再安装一遍即可确认是否都安装上

2.4.1.2  libiconv软件 和字符集转换相关软件

  由于该软件yum安装不上,需要单独安装一下。

                  说明:此软件在centos6.8之后已经自带此软件功能,可以不进行安装 

编译好的软件如何删除

2.4.1.3  安装加密相关的依赖软件(3个)

    这三个软件依赖与epel源

2.4.2 编译安装php过程

解压安装包

配置php (配置的参数较多)

  mysqlnd本地没有mysql

PHP编译参数详解

<p>
  <strong>&nbsp; &nbsp; &nbsp;&nbsp;</strong><strong>输出的信息</strong>
</p>

<div>
  <div class="cnblogs_code">
    <pre><span style="color: #000000;">Generating files

configure: creating ./config.status creating main/internal_functions.c creating main/internal_functions_cli.c +——————————————————————–+ | License: | | This software is subject to the PHP License, available in this | | distribution in the file LICENSE. By continuing this installation | | process, you are bound by the terms of this license agreement. | | If you do not agree with the terms of this license, you must abort | | the installation process at this point. | +——————————————————————–+

Thank you for using PHP.

<p>
  <strong>防错&nbsp; </strong>
</p>

<div>
  <div class="cnblogs_code">
    <pre><span style="color: #0000ff;">ln</span> -s /application/mysql/lib/libmysqlclient.so.<span style="color: #800080;">18</span>  /usr/lib64/

touch ext/phar/phar.phar

<p>
  <strong>编译 && </strong><strong>编译安装</strong>
</p>

<div>
  <div class="cnblogs_code">
    <pre><span style="color: #0000ff;">make</span> && <span style="color: #0000ff;">make</span> <span style="color: #0000ff;">install</span></pre>
  </div>
</div>

<h3>
  <span id="243_PHP">2.4.3 PHP软件程序创建软链接</span>
</h3>

<div>
  <div class="cnblogs_code">
    <pre><span style="color: #0000ff;">ln</span> -s /application/php-<span style="color: #800080;">5.5</span>.<span style="color: #800080;">32</span>/ /application/php</pre>
  </div>
</div>

<h3>
  <span id="244_phpphp-fpm">2.4.4 配置php解析文件/配置php-fpm配置文件</span>
</h3>

<p>
  两个默认的配置文件区别
</p>

<div>
  <div class="cnblogs_code">
    <pre>cd /server/tools/php-<span style="color: #800080;">5.5</span>.<span style="color: #800080;">32</span><span style="color: #000000;">

ll php.ini* -rw-r–r–. 1 1001 1001 69236 2016-02-02 21:33 php.ini-development -rw-r–r–. 1 1001 1001 69266 2016-02-02 21:33 php.ini-production

<p>
  <strong>配置文件说明:</strong>
</p>

<p>
      php.ini-developments是开发人员调试用配置文件
</p>

<p>
      php.ini-production是生产常见所有配置文件
</p>

<div>
  <p class="a4">
    <span style="background-color: #00ff00;">文件区别对比:</span>
  </p>
  
  <p class="a4">
    &nbsp;&nbsp;&nbsp; 生产的文件不会输出过多的日志信息,而开发文件会输出大量程序测试日志信息。
  </p>
</div>

<p>
  对比俩个文件不同的命令
</p>

<div>
  <div class="cnblogs_code">
    <pre><span style="color: #0000ff;">diff</span> / vimdiff</pre>
  </div>
  
  <p class="ad">
    <strong>复制配置文件(2</strong><strong>个)</strong>
  </p>
</div>

<div>
  <div class="cnblogs_code">
    <pre># 创建软连接 : <span style="color: #0000ff;">ln</span> -sf /application/php-<span style="color: #800080;">5.5</span>.<span style="color: #800080;">32</span> /application/<span style="color: #000000;">php

[root@web01 ~]#cd /server/tools/php-5.5.32 [root@web01 php-5.5.32]# cp php.ini-production /application/php/lib/php.ini [root@web01 etc]# cd /application/php/etc/ [root@web01 etc]# cp php-fpm.conf.default php-fpm.conf

<h3>
  <span id="245_php-fpm">2.4.5 启动php-fpm程序</span>
</h3>

<div>
  <div class="cnblogs_code">
    <pre>[root@web01 ~]# /application/php/sbin/php-fpm </pre>
  </div>
  
  <p>
      确认php 9000端口是否正确启动(检查服务是否启动)
  </p>
</div>

<div>
  <div class="cnblogs_code">
    <pre>[root@web01 ~]# netstat -lntup |<span style="color: #0000ff;">grep</span> <span style="color: #800080;">9000</span><span style="color: #000000;">

tcp 127.0.0.1:9000 0.0.0.0:* LISTEN

<h2>
  <span id="25_nginx_php">2.5 nginx 与 php 建立连接关系</span>
</h2>

<h3>
  <span id="251_nginxnginxphp">2.5.1 修改nginx配置文件,使nginx程序与php程序建立联系</span>
</h3>

<div>
  <div class="cnblogs_code">
    <pre>vim extra/<span style="color: #000000;">blog.conf

server { listen 80; server_name blog.etiantian.org; location / { root html/blog; index index.php index.html index.htm;
} location ~* .*.(php|php5)?$ { root html/blog; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi.conf; } }

<div>
  <p class="a4">
    说明:利用nginx的location区块实现动态请求与静态请求的分别处理
  </p>
  
  <p class="a4">
    &nbsp;   &nbsp;&nbsp; <-- 需要注意编辑修改默认首页文件&nbsp; index&nbsp; index.php index.html index.htm;
  </p>
  
  <p class="a4">
       让nginx服务具有动态请求解析功能。
  </p>
</div>

<h3>
  <span id="252">2.5.2 重启服务</span>
</h3>

<div>
  <div class="cnblogs_code">
    <pre>[root@web01 ~]# /application/nginx/sbin/nginx -<span style="color: #000000;">t

nginx: the configuration file /application/nginx-1.10.2/conf/nginx.conf syntax is ok nginx: configuration file /application/nginx-1.10.2/conf/nginx.conf test is successful [root@web01 ~]# /application/nginx/sbin/nginx -s reload

<h3>
  <span id="253_nginxphp">2.5.3 编辑nginx与php连通性测试文件,并进行测试</span>
</h3>

<p>
  测试动态请求是否可以处理:
</p>

<div>
  <div class="cnblogs_code">
    <pre><span style="color: #0000ff;">echo</span> <span style="color: #800000;">'</span><span style="color: #800000;"><?php phpinfo(); ?></span>

' >/application/nginx/html/blog/test_info.php

<p>
  测试站点
</p>

<div>
  <div class="cnblogs_code">
    <pre>        curl  http:<span style="color: #008000;">//</span><span style="color: #008000;">blog.etiantian.org/index.html            &lt;-- 静态请求站点文件信息测试    </span>
<p>
  说明:当php服务停止时,9000端口信息消失,即停止PHP错误报502错误
</p>

<p>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; linux系统测试完毕后,建议利用浏览器进行最终测试,测试效果更明显些
</p>

<h3>
  <span id="254">2.5.4 浏览器测试</span>
</h3>

<p>
  浏览器访问
</p>

<p>
  http://blog.znix.top/test_info.php
</p>

<p style="text-align: center;">
  <img data-original="https://clsn.io/wp-content/uploads/2018/03/1190037-20171211220249399-1514471914.png" src="/wp-content/themes/clsn-003/img/blank.gif" alt="企业级LNMP架构搭建实例(基于Centos6.x)" alt="" />
</p>

<h2>
  <span id="26_phpmysql">2.6 编辑php与mysql连通性测试文件,并进行测试</span>
</h2>

<h3>
  <span id="261">2.6.1 创建数据库</span>
</h3>

<div>
  <div class="cnblogs_code">
    <pre>mysql -uroot -<span style="color: #000000;">pclsn123;

show databases; <— 查看当前数据库信息 create database wordpress; <—创建博客储存数据库

<h3>
  <span id="262_mysql">2.6.2 在mysql中添加用户信息</span>
</h3>

<p>
  创建数据库授权用户
</p>

<div>
  <div class="cnblogs_code">
    <pre>grant all on wordpress.* to <span style="color: #800000;">'</span><span style="color: #800000;">wordpress</span><span style="color: #800000;">'</span>@<span style="color: #800000;">'</span><span style="color: #800000;">10.0.0.%</span><span style="color: #800000;">'</span> identified by <span style="color: #800000;">'</span><span style="color: #800000;">clsn123</span><span style="color: #800000;">'</span><span style="color: #000000;">;

flush privileges;

  <p>
      授权 所有权限 为 wordpress库的所有表&nbsp; &nbsp;用户@地址 设置密码 &nbsp;;&nbsp; &nbsp;
  </p>
</div>

<div>
  <p class="a4">
      刷新数据库
  </p>
</div>

<p>
  添加上用于blog使用的mysql用户
</p>

<div>
  <div class="cnblogs_code">
    <pre>drop user wordpress@<span style="color: #800000;">'</span><span style="color: #800000;">172.16.1.8</span><span style="color: #800000;">'</span>;    &lt;---<span style="color: #000000;"> 删除用户信息

select user,host from mysql.user; <— 查看用户信息 mysql -uwordpress -p123456 <— 测试创建的用户连接 show databases; <— 查看当前数据库信息

<h2>
  <span id="27_php">2.7 测试php与数据库连通性</span>
</h2>

<div>
  <div class="cnblogs_code">
    <pre>vim test_mysql.<span style="color: #000000;">php

<?php </span>

//$link_id=mysql_connect(‘主机名’,‘用户’,‘密码’); //mysql -u用户 -p密码 -h 主机 $link_id=mysql_connect(‘localhost’,‘wordpress’,‘clsn123’) or mysql_error(); if($link_id){ echo “mysql successful by clsn !\n”; }else{ echo mysql_error(); } ?>

<h3>
  <span id="271">2.7.1 网站访问测试</span>
</h3>

<p>
  测试动态请求访问nginx服务是否可以到达数据库
</p>

<p style="text-align: center;" align="center">
  <img data-original="https://clsn.io/wp-content/uploads/2018/03/1190037-20171211220409884-1879003437.png" src="/wp-content/themes/clsn-003/img/blank.gif" alt="企业级LNMP架构搭建实例(基于Centos6.x)" alt="" />&nbsp;
</p>

<h2>
  <span id="28_wordpress">2.8 下载部署wordpress博客程序</span>
</h2>

<p>
    下载地址:https://cn.wordpress.org
</p>

<h3>
  <span id="281">2.8.1 解压出来</span>
</h3>

<div>
  <div class="cnblogs_code">
    <pre>tar xf wordpress-4.7.3-zh_CN.tar.gz  </pre>
  </div>
</div>

<h3>
  <span id="282">2.8.2 代码上线</span>
</h3>

<div>
  <div class="cnblogs_code">
    <pre>[root@web01 wordpress]<span style="color: #008000;">#</span><span style="color: #008000;"> pwd</span>

/server/tools/lnmp/wordpress [root@web01 wordpress]# mv ./* /application/nginx/html/blog/

<h3>
  <span id="283">2.8.3 统一代码属主.属组</span>
</h3>

<p>
  对站点目录进行 授权
</p>

<div>
  <div class="cnblogs_code">
    <pre>[root@web01 wordpress]<span style="color: #008000;">#</span><span style="color: #008000;"> cd /application/nginx/html/blog/</span>

[root@web01 blog]# chown www.www -R /application/nginx/html/blog/ [root@web01 blog]# ll total 200 -rw-r–r– 1 www www 11 Oct 25 09:20 index.html -rw-r–r– 1 www www 418 Sep 25 2013 index.php ……

<p>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 说明:wp-config.php文件创建需要能够有权限对目录操作。
</p>

<p>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 此文件定义数据库连接信息
</p>

<h3>
  <span id="284">2.8.4 创建数据库</span>
</h3>

<div>
  <div class="cnblogs_code">
    <pre><span style="color: #008080;">mysql</span> -uroot -<span style="color: #000000;">pclsn123;

show databases;
create database wordpress;

<h3>
  <span id="285_wordpress">2.8.5 添加wordpress数据库用户</span>
</h3>

<div>
  <div class="cnblogs_code">
    <pre>mysql<span style="color: #808080;">></span> <span style="color: #0000ff;">grant</span> <span style="color: #808080;">all</span> <span style="color: #0000ff;">on</span> wordpress.<span style="color: #808080;">*</span> <span style="color: #0000ff;">to</span> <span style="color: #ff0000;">'</span><span style="color: #ff0000;">wordpress</span><span style="color: #ff0000;">'</span>@<span style="color: #ff0000;">'</span><span style="color: #ff0000;">10.0.0.%</span><span style="color: #ff0000;">'</span> identified <span style="color: #0000ff;">by</span> <span style="color: #ff0000;">'</span><span style="color: #ff0000;">clsn123</span><span style="color: #ff0000;">'</span><span style="color: #000000;">; 

Query OK, rows affected (0.16 sec)

mysql> select user,host from mysql.user; +———+———–+ | user | host | +———+———–+ | wordpress | 10.0..% | | root | 127.0.0.1 | | root | ::1 | | | localhost | | root | localhost | | | web01 | | root | web01 | +———+———–+ 7 rows in set (0.00 sec)

<h3>
  <span id="286_wordpress">2.8.6 安装wordpress</span>
</h3>

<p>
  <strong>访问网站进行初始化操作</strong>
</p>

<p>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;填写的数据为
</p>

<p align="center">
  &nbsp;<img data-original="https://clsn.io/wp-content/uploads/2018/03/1190037-20171211220643571-299539412.png" src="/wp-content/themes/clsn-003/img/blank.gif" alt="企业级LNMP架构搭建实例(基于Centos6.x)" alt="" />
</p>

<p>
  <strong>连接数据库配置说明</strong>
</p>

<div>
  <p class="a4">
    数据库名:指定数据存储到哪一个数据库当中,例如:存储到wordpress数据库中
  </p>
  
  <p class="a4">
    用户名:以什么用户身份管理wordpress数据库
  </p>
  
  <p class="a4">
    密码: 用户的密码
  </p>
  
  <p class="a4">
    数据库主机: 指定连接的数据库服务器地址信息
  </p>
  
  <p class="a4">
    表前缀:标识相应表属于哪一个数据库
  </p>
  
  <p class="a4">
    说明:配置完数据连接信息后,会自动创建wp-config.php文件,此文件定义数据库连接配置信息
  </p>
</div>

<p>
  <strong>安装完成效果</strong>
</p>

<p align="center">
  <img data-original="https://clsn.io/wp-content/uploads/2018/03/1190037-20171211220711384-942725444.png" src="/wp-content/themes/clsn-003/img/blank.gif" alt="企业级LNMP架构搭建实例(基于Centos6.x)" alt="" />&nbsp;
</p>

<h1>
  <span id="3_mysql">第3章 mysql数据/储存数据迁移</span>
</h1>

<h2>
  <span id="31_mysql">3.1 mysql数据库迁移</span>
</h2>

<p>
  <strong>说明:</strong>
</p>

<div>
  <p class="a4">
        以上的mysql配置都是在web01 上进行 ,现在需要将web01上的mysql数据进行迁移到db01(数据库服务器)上去。
  </p>
</div>

<h3>
  <span id="311">3.1.1 备份数据库中的数据</span>
</h3>

<div>
  <div class="cnblogs_code">
    <pre>[root@db01 ~]# mysqldump -uroot -pclsn123 --all-databases >/tmp/bak.sql</pre>
  </div>
</div>

<p>
  使用mysqldump命令将数据库中的全部数据进行备份 备份到 /tmp/bak.sql 。
</p>

<p>
  <strong>mysqldump </strong><strong>命令参数说明:</strong>
</p>

<table border="1" cellspacing="0" cellpadding="0">
  <tr>
    <td width="245">
      <p align="center">
        <strong>参数</strong>
      </p>
    </td>
    
    <td width="452">
      <p align="center">
        <strong>参数说明</strong>
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--add-drop-table </strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        在每个创建数据库表语句前添加删除数据库表的语句;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--add-locks </strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        备份数据库表时锁定数据库表;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--all-databases</strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        备份MySQL服务器上的所有数据库;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--comments</strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        添加注释信息;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--compact </strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        压缩模式,产生更少的输出;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--complete-insert </strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        输出完成的插入语句;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--databases </strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        指定要备份的数据库;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--default-character-set</strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        指定默认字符集;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--force </strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        当出现错误时仍然继续备份操作;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--host </strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        指定要备份数据库的服务器;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--lock-tables&nbsp; </strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        备份前,锁定所有数据库表;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--no-create-db </strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        禁止生成创建数据库语句;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--no-create-info</strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        禁止生成创建数据库库表语句;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--password&nbsp;&nbsp; </strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        连接MySQL服务器的密码;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--port&nbsp;&nbsp;&nbsp;&nbsp; </strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        MySQL服务器的端口号;
      </p>
    </td>
  </tr>
  
  <tr>
    <td width="245">
      <p>
        <strong>--user&nbsp;&nbsp;&nbsp; </strong>
      </p>
    </td>
    
    <td width="452">
      <p>
        连接MySQL服务器的用户名。
      </p>
    </td>
  </tr>
</table>

<h3 style="text-align: left;">
  <span id="312_mysqldb01">3.1.2 将备份数据传输到mysql服务器(db01)</span>
</h3>

<div>
  <div class="cnblogs_code">
    <pre>[root@web01 tools]# rsync  -avz /tmp/bak.sql  <span style="color: #800080;">172.16</span>.<span style="color: #800080;">1.51</span>:/tmp/<span style="color: #000000;">

The authenticity of host '172.16.1.51 (172.16.1.51)' can't be established. RSA key fingerprint is d3:41:bb:0d:43:88:da:a3:2c:e8:36:91:11:c9:e4:9c. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '172.16.1.51' (RSA) to the list of known hosts. root@172.16.1.51's password: sending incremental file list bak.sql

sent 377261 bytes received 31 bytes 83842.67 bytes/sec total size is 1483738 speedup is 3.93

<p>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 使用rsync将数据推送到MySQL服务器的/tmp 目录下面。
</p>

<h3>
  <span id="313_mysql">3.1.3 数据库服务器部署mysql服务(快速部署命令集)</span>
</h3>

<p>
  mysql服务快速部署过程脚本。详情参见<a href="#_部署mysql数据库服务">mysql数据库部署安装。</a>
</p>

<div>
  <div class="cnblogs_code">
    <pre>cd /server/<span style="color: #000000;">tools

tar xf mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz useradd -s /sbin/nologin -M mysql mkdir -p /application/ mv /server/tools/mysql-5.6.34-linux-glibc2.5-x86_64 /application/mysql-5.6.34 ln -s /application/mysql-5.6.34/ /application/mysql chown -R mysql.mysql /application/mysql /application/mysql/scripts/mysql_install_db –basedir=/application/mysql –datadir=/application/mysql/data –user=mysql cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld chmod +x /etc/init.d/mysqld sed -i 's#/usr/local/mysql#/application/mysql#g' /application/mysql/bin/mysqld_safe /etc/init.d/mysqld </span>cp /application/mysql/support-files/my-default.cnf /etc/my.cnf /etc/init.d/mysqld start /application/mysql/bin/mysqladmin -u root password 'clsn123'

<h3>
  <span id="314">3.1.4 将备份的数据恢复到数据库服务器上</span>
</h3>

<div>
  <div class="cnblogs_code">
    <pre>[root@db01 ~]# /application/mysql/bin/mysql -uroot -pclsn123 &lt;/tmp/<span style="color: #000000;">bak.sql 

Warning: Using a password on the command line interface can be insecure.

<p>
  <strong>注意,</strong>数据库导入之后要刷新数据库,让导入的数据被识别(重要)
</p>

<div>
  <div class="cnblogs_code">
    <pre>mysql><span style="color: #000000;"> flush privileges;

Query OK, rows affected (0.00 sec)

<h3>
  <span id="315_web01">3.1.5 在web01服务器上进行远程登陆数据库测试</span>
</h3>

<div>
  <div class="cnblogs_code">
    <pre><span style="color: #ff0000;">[</span><span style="color: #ff0000;">root@web01 ~</span><span style="color: #ff0000;">]</span># <span style="color: #808080;">/</span>application<span style="color: #808080;">/</span>mysql<span style="color: #808080;">/</span>bin<span style="color: #808080;">/</span>mysql <span style="color: #808080;">-</span>u wordpress <span style="color: #808080;">-</span>pclsn123  <span style="color: #808080;">-</span>h <span style="color: #800000; font-weight: bold;">10.0</span>.<span style="color: #800000; font-weight: bold;">0.51</span><span style="color: #000000;">

Warning: Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4 Server version: 5.6.34 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> mysql> show databases; +——————+ | Database | +——————+ | information_schema | | test | | wordpress | +——————+ 3 rows in set (0.00 sec)

<h3>
  <span id="316_webphp">3.1.6 修改web服务器php连接数据库主机的配置文件</span>
</h3>

<p>
  修改wordpress软件的配置,将连接的主机地址改为数据库服务器的地址
</p>

<div>
  <div class="cnblogs_code">
    <pre>[root@web01 ~]# vim /application/nginx/html/blog/wp-<span style="color: #000000;">config.php

……

/ MySQL主机 */

define('DB_HOST', '10.0.0.51');

……

<h2>
  <span id="32_nfs">3.2 本地数据挂载到nfs共享储存</span>
</h2>

<h3>
  <span id="321">3.2.1 确认本地数据的储存位置(三种方法)</span>
</h3>

<p>
  01.通过网页图片属性信息进行确认路径
</p>

<div>
  <p class="a4">
      http://blog.clsn.top/wp-content/uploads/2017/10/cropped-Frog-2.png
  </p>
</div>

<p>
  02.通过find查看数据储存路径信息,上传个图片,查找相同中1分钟以内的文件
</p>

<div>
  <div class="cnblogs_code">
    <pre><span style="color: #0000ff;">find</span> -type f -mmin -<span style="color: #800080;">1</span></pre>
  </div>
</div>

<p>
  03.通过inotify软件进行监控
</p>

<div>
  <p class="ad">
      确认文件的储存目录
  </p>
  
  <div class="cnblogs_code">
    <pre>/application/nginx/html/blog/wp-content/uploads</pre>
  </div>
</div>

<h3>
  <span id="322">3.2.2 将已有数据进行迁移备份</span>
</h3>

<p>
  备份数据是因为挂载的时候会将当前的数据全部'覆盖'掉,只显示nfs共享目录的信息。
</p>

<div>
  <div class="cnblogs_code">
    <pre>[root@web01 uploads]# <span style="color: #0000ff;">pwd</span>

/application/nginx/html/blog/wp-content/uploads [root@web01 uploads]# mkdir /tmp/wordpress_bak [root@web01 uploads]# mv ./* /tmp/wordpress_bak/

<h3>
  <span id="323_nfs">3.2.3 nfs储存服务配置</span>
</h3>

<p>
  配置nfs服务的时候注意权限的设置
</p>

<div>
  <div class="cnblogs_code">
    <pre>[root@nfs01 data]# <span style="color: #0000ff;">cat</span> /etc/<span style="color: #000000;">exports 

#share user:hzs /data 172.16.1.0/24(rw,sync,root_squash,no_all_squash,anonuid=501,anongid=501)

<p>
  <strong>注意:</strong>
</p>

<p>
    anonuid 与 anongid 要和web服务器上的www用户的相同<strong>(</strong>UID与GID相同)
</p>

<div>
  <div class="cnblogs_code">
    <pre>[root@nfs01 /]# <span style="color: #0000ff;">id</span><span style="color: #000000;"> www

uid=501(www) gid=501(www) groups=501(www)

<p>
  目录的属组要是与nfs配置的anonuid,anongid相同的用户。
</p>

<div>
  <div class="cnblogs_code">
    <pre>[root@nfs01 /]# ll /data/ -<span style="color: #000000;">d

drwxr-xr-x 3 www www 4096 Oct 27 12:11 /data/

<div>
  <p class="a4">
    NFS的配置详情参见:<a href="/wp-content/themes/clsn-003/inc/go.php?url=http://www.cnblogs.com/znix/p/7694456.html" > NFS存储服务部署</a>一篇。
  </p>
</div>

<h3>
  <span id="324_nfs">3.2.4 将储存目录挂载到nfs共享目录上</span>
</h3>

<p>
  注:作为nfs客户端需要安装nfs-utils 和 rpcbind
</p>

<p>
  ①先检查是否能挂载,显示可以挂载的目录
</p>

<div>
  <div class="cnblogs_code">
    <pre>[root@web01 uploads]# showmount -e <span style="color: #800080;">172.16</span>.<span style="color: #800080;">1.31</span><span style="color: #000000;">

Export list for 172.16.1.31: /data 172.16.1.0/24

<p>
  ②将磁盘进行挂载
</p>

<div>
  <div class="cnblogs_code">
    <pre>[root@web01 uploads]# <span style="color: #0000ff;">mount</span> -t nfs <span style="color: #800080;">172.16</span>.<span style="color: #800080;">1.31</span>:/data  /application/nginx/html/blog/wp-content/uploads/</pre>
  </div>
</div>

<p>
  ③显示磁盘信息
</p>

<div>
  <div class="cnblogs_code">
    <pre>[root@web01 uploads]# <span style="color: #0000ff;">df</span> -<span style="color: #000000;">h

Filesystem Size Used Avail Use% Mounted on /dev/sda3 19G 3.7G 15G 21% / tmpfs 238M 238M % /dev/shm /dev/sda1 190M 40M 141M 22% /boot 172.16.1.31:/data 19G 1.5G 17G 9% /application/nginx-1.10.2/html/blog/wp-content/uploads

<h3>
  <span id="325">3.2.5 恢复数据(将之前备份的数据还原回来)</span>
</h3>

<div>
  <div class="cnblogs_code">
    <pre>[root@web01 uploads]# <span style="color: #0000ff;">pwd</span><span style="color: #000000;">

application/nginx-1.10.2/html/blog/wp-content/uploads [root@web01 uploads]# mv /tmp/wordpress_bak/* ./

  <h3>
    <span id="326">3.2.6 命令补全功能</span>
  </h3>
  
  <div class="cnblogs_code">
    <pre>yum install bash-completion -y</pre>
  </div>
  
  <h2>
    <span id="nbsp33">&nbsp;3.3各服务的启动脚本</span>
  </h2>
  
  <h3>
    <span id="nbsp331php">&nbsp;3.3.1php启动脚本</span>
  </h3>
  
  <div class="cnblogs_code">
    <pre><span style="color: #008000;">#</span><span style="color: #008000;"> 复制php启动脚本</span>

[root@clsn ~]# cp /server/tools/php-5.5.32/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm [root@clsn ~]# chmod +x /etc/init.d/php-fpm # 找到pid文件,开启它 [root@clsn ~]# vim /application/php/etc/php-fpm.conf # ··· [global] ; Pid file ; Note: the default prefix is /application/php-5.5.32/var ; Default Value: none pid = run/php-fpm.pid # ··· # 启动php [root@clsn ~]# /etc/init.d/php-fpm status php-fpm (pid 27931) is running…

  <h3>
    <span id="332NGINX">3.3.2NGINX管理脚本</span>
  </h3>
  
  <div class="cnblogs_code">
    <pre>[root@clsn ~]<span style="color: #008000;">#</span><span style="color: #008000;"> cat /etc/init.d/nginx </span><span style="color: #008000;">

#!/bin/sh

# nginx - this script starts and stops the nginx daemon

# chkconfig: - 85 15 # description: NGINX is an HTTP(S) server, HTTP(S) reverse </span> # proxy and IMAP/POP3 proxy server # processname: nginx # config: /application/nginx/conf/nginx.conf # config: /application/nginx/sbin/nginx # pidfile: # by: http://www.nmtui.com

# Source function library. . /etc/rc.d/init.d/functions

# Source networking configuration. . /etc/sysconfig/network

# Check that networking is up. [ "$NETWORKING" = "no" ] && exit 0

nginx="/application/nginx/sbin/nginx" prog=$(basename $nginx)

NGINX_CONF_FILE="/application/nginx/conf/nginx.conf"

#[ -f /application/nginx/sbin/nginx ] && . /application/nginx/sbin/nginx lockfile=/var/lock/subsys/nginx

make_dirs() { # make required directories user=$nginx -V 2>&1 | grep <span style="color: #800000;">"</span><span style="color: #800000;">configure arguments:.*--user=</span><span style="color: #800000;">"</span> | sed <span style="color: #800000;">'</span><span style="color: #800000;">s/[^*]*--user=\([^ ]*\).*/\1/g</span><span style="color: #800000;">'</span> -<span style="color: #000000;"> if [ -n "$user" ]; then if [ -z "grep $user /etc/passwd" ]; then useradd -M -s /bin/nologin $user fi options=$nginx -V 2>&1 | grep <span style="color: #800000;">'</span><span style="color: #800000;">configure arguments:</span><span style="color: #800000;">'</span><span style="color: #000000;"> for opt in $options; do if [ echo $opt | grep <span style="color: #800000;">'</span><span style="color: #800000;">.*-temp-path</span><span style="color: #800000;">'</span><span style="color: #000000;"> ]; then value=echo $opt | cut -d <span style="color: #800000;">"</span><span style="color: #800000;">=</span><span style="color: #800000;">"</span> -f 2<span style="color: #000000;"> if [ ! -d "$value" ]; then # echo “creating” $value mkdir -p $value && chown -R $user $value fi fi done fi }

start() { [ -x $nginx ] || exit 5 [ -f $NGINX_CONF_FILE ] || exit 6 make_dirs echo -n $"Starting $prog: " daemon $nginx -c $NGINX_CONF_FILE retval=$? echo [ $retval -eq 0 ] && touch $lockfile return $retval }

stop() { echo -n $"Stopping $prog: " killproc $prog -QUIT retval=$? echo [ $retval -eq 0 ] && rm -f $lockfile return $retval }

restart() { configtest || return $? stop sleep 1 start }

reload() { configtest || return $? echo -n $"Reloading $prog: " killproc $nginx -HUP RETVAL=$? echo }

force_reload() { restart }

configtest() { $nginx -t -c $NGINX_CONF_FILE }

rh_status() { status $prog }

rh_status_q() { rh_status >/dev/null 2>&1 }

case "$1" in start) rh_status_q && exit 0 $1 ;; stop) rh_status_q || exit 0 $1 ;; restart|configtest) $1 ;; reload) rh_status_q || exit 7 $1 ;; force-reload) force_reload ;; status) rh_status ;; condrestart|try-restart) rh_status_q || exit 0 ;; *) echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}" exit 2 esac

  <p>
    &nbsp;
  </p>
  
  <p>
    &nbsp;
  </p>
  
  <p>
    &nbsp;
  </p>
  
  <p>
    &nbsp;
  </p>
  
  <p>
    &nbsp;
  </p>
</div>

<p>
  &nbsp;
</p>

<div id="toc_container" class="toc_white have_bullets">
  <ul class="toc_list">
    <ul>
      <li>
        <a href="#11_LNMP">1.1 部署LNMP架构说明</a><ul>
          <li>
            <a href="#111_LNMP">1.1.1 LNMP架构内容</a>
          </li>
          <li>
            <a href="#112_LNMP">1.1.2 配置LNMP架构步骤</a>
          </li>
          <li>
            <a href="#113">1.1.3 架构服务器串联</a>
          </li>
          <li>
            <a href="#114_LNMP_FastCGI">1.1.4 LNMP FastCGI知识说明</a>
          </li>
        </ul>
      </li>
      
      <li>
        <a href="#2_LNMP">第2章 LNMP环境搭建步骤</a>
      </li>
      <li>
        <a href="#21_linux">2.1 部署linux系统</a>
      </li>
      <li>
        <a href="#22_nginx">2.2 部署nginx网站服务</a><ul>
          <li>
            <a href="#221">2.2.1 检查软件安装的系统环境</a>
          </li>
          <li>
            <a href="#222_nginxpcre-devel_openssl-devel">2.2.2 安装nginx的依赖包(pcre-devel openssl-devel)</a>
          </li>
          <li>
            <a href="#223_nginx">2.2.3 下载nginx软件</a>
          </li>
          <li>
            <a href="#224_www">2.2.4 创建管理用户 www</a>
          </li>
          <li>
            <a href="#225_nbspnginx">2.2.5 &nbsp;nginx软件编译安装过程</a><ul>
              <li>
                <a href="#2251nbsp">2.2.5.1&nbsp; 注意</a>
              </li>
              <li>
                <a href="#2252nbsp">2.2.5.2&nbsp; 编译安装软件</a>
              </li>
            </ul>
          </li>
          
          <li>
            <a href="#226">2.2.6 创建软连接</a>
          </li>
          <li>
            <a href="#227_nginxconf_nginx">2.2.7 精简化nginx.conf 主配置文件内容, 编写nginx配置文件</a>
          </li>
          <li>
            <a href="#228">2.2.8 启动程序</a>
          </li>
        </ul>
      </li>
      
      <li>
        <a href="#23_mysql">2.3 部署mysql数据库服务</a><ul>
          <li>
            <a href="#231_mysql">2.3.1 下载mysql软件</a>
          </li>
          <li>
            <a href="#232_mysql">2.3.2 【二进制包方式】安装mysql数据库软件</a><ul>
              <li>
                <a href="#2321nbsp">2.3.2.1&nbsp; 解压二进制包软件?</a>
              </li>
              <li>
                <a href="#2322nbsp_mysql">2.3.2.2&nbsp; 创建储存目录管理用户mysql?</a>
              </li>
              <li>
                <a href="#2323nbsp">2.3.2.3&nbsp; 将解压后的二进制包放置到程序目录中?</a>
              </li>
              <li>
                <a href="#2324nbsp_mysql">2.3.2.4&nbsp; 对mysql数据储存目录进行授权?</a>
              </li>
              <li>
                <a href="#2325nbsp">2.3.2.5&nbsp; 初始化数据库服务?</a>
              </li>
              <li>
                <a href="#2326nbsp">2.3.2.6&nbsp; 将启动脚本文件复制到启动目录中?</a>
              </li>
              <li>
                <a href="#2327nbsp_mysql">2.3.2.7&nbsp; 设置mysql服务配置文件?</a>
              </li>
              <li>
                <a href="#2328nbsp_mysql">2.3.2.8&nbsp; 启动mysql服务?</a>
              </li>
              <li>
                <a href="#2329nbsp">2.3.2.9&nbsp; 检查端口信息,确认服务是否启动?</a>
              </li>
              <li>
                <a href="#23210nbspnbspnbspnbsp_root">2.3.2.10&nbsp;&nbsp;&nbsp;&nbsp; 设置root用户密码信息?</a>
              </li>
              <li>
                <a href="#23211nbspnbspnbspnbsp">2.3.2.11&nbsp;&nbsp;&nbsp;&nbsp; 测试</a>
              </li>
            </ul>
          </li>
          
          <li>
            <a href="#233_mysql">2.3.3 管理mysql数据库</a><ul>
              <li>
                <a href="#2331nbsp">2.3.3.1&nbsp; 查看数据库</a>
              </li>
              <li>
                <a href="#2332nbsp">2.3.3.2&nbsp; 查看数据表信息</a>
              </li>
              <li>
                <a href="#2333nbsp">2.3.3.3&nbsp; 退出数据库</a>
              </li>
            </ul>
          </li>
        </ul>
      </li>
      
      <li>
        <a href="#24_php">2.4 部署php服务</a><ul>
          <li>
            <a href="#241_PHP14">2.4.1 解决PHP软件的依赖关系(14个依赖包)</a><ul>
              <li>
                <a href="#2411nbsp_base">2.4.1.1&nbsp; 基于base源的个依赖包</a>
              </li>
              <li>
                <a href="#2412nbsp_libiconv">2.4.1.2&nbsp; libiconv软件 和字符集转换相关软件</a>
              </li>
              <li>
                <a href="#2413nbsp_3">2.4.1.3&nbsp; 安装加密相关的依赖软件(3个)</a>
              </li>
            </ul>
          </li>
          
          <li>
            <a href="#242_php">2.4.2 编译安装php过程</a>
          </li>
          <li>
            <a href="#243_PHP">2.4.3 PHP软件程序创建软链接</a>
          </li>
          <li>
            <a href="#244_phpphp-fpm">2.4.4 配置php解析文件/配置php-fpm配置文件</a>
          </li>
          <li>
            <a href="#245_php-fpm">2.4.5 启动php-fpm程序</a>
          </li>
        </ul>
      </li>
      
      <li>
        <a href="#25_nginx_php">2.5 nginx 与 php 建立连接关系</a><ul>
          <li>
            <a href="#251_nginxnginxphp">2.5.1 修改nginx配置文件,使nginx程序与php程序建立联系</a>
          </li>
          <li>
            <a href="#252">2.5.2 重启服务</a>
          </li>
          <li>
            <a href="#253_nginxphp">2.5.3 编辑nginx与php连通性测试文件,并进行测试</a>
          </li>
          <li>
            <a href="#254">2.5.4 浏览器测试</a>
          </li>
        </ul>
      </li>
      
      <li>
        <a href="#26_phpmysql">2.6 编辑php与mysql连通性测试文件,并进行测试</a><ul>
          <li>
            <a href="#261">2.6.1 创建数据库</a>
          </li>
          <li>
            <a href="#262_mysql">2.6.2 在mysql中添加用户信息</a>
          </li>
        </ul>
      </li>
      
      <li>
        <a href="#27_php">2.7 测试php与数据库连通性</a><ul>
          <li>
            <a href="#271">2.7.1 网站访问测试</a>
          </li>
        </ul>
      </li>
      
      <li>
        <a href="#28_wordpress">2.8 下载部署wordpress博客程序</a><ul>
          <li>
            <a href="#281">2.8.1 解压出来</a>
          </li>
          <li>
            <a href="#282">2.8.2 代码上线</a>
          </li>
          <li>
            <a href="#283">2.8.3 统一代码属主.属组</a>
          </li>
          <li>
            <a href="#284">2.8.4 创建数据库</a>
          </li>
          <li>
            <a href="#285_wordpress">2.8.5 添加wordpress数据库用户</a>
          </li>
          <li>
            <a href="#286_wordpress">2.8.6 安装wordpress</a>
          </li>
        </ul>
      </li>
    </ul></li>
    
    <li>
      <a href="#3_mysql">第3章 mysql数据/储存数据迁移</a><ul>
        <li>
          <a href="#31_mysql">3.1 mysql数据库迁移</a><ul>
            <li>
              <a href="#311">3.1.1 备份数据库中的数据</a>
            </li>
            <li>
              <a href="#312_mysqldb01">3.1.2 将备份数据传输到mysql服务器(db01)</a>
            </li>
            <li>
              <a href="#313_mysql">3.1.3 数据库服务器部署mysql服务(快速部署命令集)</a>
            </li>
            <li>
              <a href="#314">3.1.4 将备份的数据恢复到数据库服务器上</a>
            </li>
            <li>
              <a href="#315_web01">3.1.5 在web01服务器上进行远程登陆数据库测试</a>
            </li>
            <li>
              <a href="#316_webphp">3.1.6 修改web服务器php连接数据库主机的配置文件</a>
            </li>
          </ul>
        </li>
        
        <li>
          <a href="#32_nfs">3.2 本地数据挂载到nfs共享储存</a><ul>
            <li>
              <a href="#321">3.2.1 确认本地数据的储存位置(三种方法)</a>
            </li>
            <li>
              <a href="#322">3.2.2 将已有数据进行迁移备份</a>
            </li>
            <li>
              <a href="#323_nfs">3.2.3 nfs储存服务配置</a>
            </li>
            <li>
              <a href="#324_nfs">3.2.4 将储存目录挂载到nfs共享目录上</a>
            </li>
            <li>
              <a href="#325">3.2.5 恢复数据(将之前备份的数据还原回来)</a>
            </li>
            <li>
              <a href="#326">3.2.6 命令补全功能</a>
            </li>
          </ul>
        </li>
        
        <li>
          <a href="#nbsp33">&nbsp;3.3各服务的启动脚本</a><ul>
            <li>
              <a href="#nbsp331php">&nbsp;3.3.1php启动脚本</a>
            </li>
            <li>
              <a href="#332NGINX">3.3.2NGINX管理脚本</a>
            </li>
          </ul>
        </li>
      </ul>
    </li>
  </ul>
</div>