lnmp动静分离[通俗易懂]

lnmp动静分离[通俗易懂]试验环境:ip服务概括192.168.1.61mysql,nginx,php,博客分离mysql,php到其他服务器192.168.1.62mysql代替1.61的mysql192.168.1.63php代替1.61的php思路:将1.61中的mysql,php,分离到其他服务器,分离后能够正常访问到1.61上的博客即可。一.分离MySQL数据库到1.621.在1.62服务器安装mysql[root@mysqld~]#rpm-ivhhtt

大家好,又见面了,我是你们的朋友全栈君。

试验环境:

ip 服务 概括
192.168.1.61 mysql,nginx,php,博客 分离mysql,php到其他服务器
192.168.1.62 mysql 代替1.61的mysql
192.168.1.63 php 代替1.61的php

思路:将1.61中的 mysql,php,分离到其他服务器,分离后能够正常访问到1.61上的博客即可。

一.分离MySQL数据库到1.62

1.在1.62服务器安装mysql

[root@mysqld ~]# rpm -ivh http://repo.mysql.com/yum/mysql-5.6-community/el/7/x86_64/mysql-community-release-el7-5.noarch.rpm
[root@mysqld ~]# yum install mysql-community-server -y
[root@mysqld ~]# systemctl start mysqld
[root@mysqld ~]# systemctl enable mysqld
[root@mysqld ~]# mysql_secure_installation //修改数据库密码

2.把原lnmp服务器上的数据库文件导出

[root@localhost zh]# mysqldump -uroot -p --all-databases > `date +%F%H`-mysql-all.sql 
Enter password: 

3.把数据库文件导入到新的mysql(1.62)服务器上

[root@localhost ~]# scp 2020-06-2019-mysql.sql root@192.168.1.62:/

[root@mysqld ~]# ls //在1.62上确认文件
2020-06-2020-mysql-all.sql  anaconda-ks.cfg  mysqld  qqq
[root@mysqld ~]# mysql -uroot -p <2020-06-2019-mysql.sql
//导入到数据库中

[root@mysqld ~]# mysql -uroot -p123.com
mysql> show databases;  //验证
mysql> grant all on blog.* to lisi@'192.168.1.%' identified by '123.com';

4.在原服务器上修改blog(博客)的配置文件,重新指定数据库服务器ip

[root@localhost ~]# cd /wordpress/ //切换到blog网页根目录
[root@localhost wordpress]# grep -R 123.com
//搜索保存密码的配置文件位置(123.com是博客后台密码)
[root@localhost wordpress]# vim /wordpress/wp-config.php 

define('DB_NAME', 'blog');          #WordPress数据库的名称 
define('DB_USER', 'lisi');			#MySQL数据库用户名 
define('DB_PASSWORD', '123.com');	#MySQL数据库密码 
define('DB_HOST', '192.168.1.105');	#新MySQL主机ip

5.把1.61上的mysql关闭,验证博客是否可以访问到
如果访问不到检查下防火墙

[root@localhost ~]# systemctl stop mysqld.service 

在这里插入图片描述
可以正常访问到mysql就成功从1.61上分离到1.62上了

二.分离php到1.63

1.在1.63上安装php

[root@localhost php]# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
[root@localhost php]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
[root@localhost php]# yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-pdo php72w-xml php72w-fpm php72w-mysqlnd php72w-opcache
[root@localhost ~]# systemctl start php-fpm.service 

2.在1.61上修改nginx配置文件将php指向新的php服务器(1.63)

[root@localhost ~]# vim /etc/nginx/conf.d/nginx.conf 

server { 
   
        listen 80;
        server_name www.qzt.com;
        root /wordpress;
        index index.html index.php;
location ~\.php$ { 
   
        root /wordpress;
        fastcgi_pass 192.168.1.63:9000; #指向新的php服务器
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;

}



}

3.修改php服务器(1.63)的配置文件

[root@localhost ~]# vim /etc/php-fpm.d/www.conf 
//定位修改
listen = 192.168.1.63:9000  #为自己的ip地址
listen.allowed_clients = 192.168.1.61 #允许1.61(nginx)访问,如果多台nginx服务器的话使用逗号隔开。

[root@localhost ~]# systemctl restart php-fpm

4.从nginx(1.61)服务器复制wordpress的安装目录到php服务器

[root@localhost ~]# scp -rp /wordpress/ root@192.168.1.63:/

5.把1.61的php关闭验证是否访问到博客

[root@localhost ~]# systemctl stop php-fpm

在这里插入图片描述
可以正常访问,php分离就完成了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/141826.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vue 二维码生成插件_vue生成二维码组件

    vue 二维码生成插件_vue生成二维码组件效果图1,下插件cnpmivue-qr–save2,在需要的页面引入,或者全局引入,我这里是局部引入,因为只有一个页面用到了。html<vue-qr:text=”text”:size=”200″:margin=”0″/>jsimportVueQrfrom’vue-qr’exportdefault{components:{VueQr},data(){ return{ text:”,//二维码内容 .

    2022年10月4日
    2
  • laravel 微信公众号的Token无效解决的方案[通俗易懂]

    laravel 微信公众号的Token无效解决的方案[通俗易懂]laravel代码的编写<?phpnamespaceApp\Http\Controllers\Admin\Official;useIlluminate\Http\Request;useApp\Http\Controllers\Controller;useIlluminate\Support\Facades\DB;define(‘TOKEN’,’yunlive11′);classWxresponseMsgextendsController{ protecte.

    2025年11月6日
    3
  • 基于ECS使用FileZilla Server建立安全的SSL/TLS FTP

    基于ECS使用FileZilla Server建立安全的SSL/TLS FTP

    2021年7月3日
    140
  • shell循环读取文件拼接字符串

    shell循环读取文件拼接字符串1注意通道和重定向的区别通道会开启子shell,于是通道语句块内的变量修改是无法影响到其外的变量的,故使用重定向;2windows文件末尾是/r/n拼接来自windows系统的文件务必首先注意:[nash5camFiles]#cat-AcamFiles.ori0.863631-0.269646-0.425949^M$

    2022年7月24日
    6
  • Android Bundle类

    Android Bundle类

    2021年12月10日
    36
  • java aqs详解_Java中的File文件类详解

    java aqs详解_Java中的File文件类详解今天学了学并发AQS机制,是抽象队列同步器,用户主要通过继承AQS类,来实现自定义锁,从而完成特定功能,AQS提供了两种锁(1)共享锁(2)排他锁。下面这个博客介绍的AQS机制挺不错可以看看原文链接一、概述  谈到并发,不得不谈ReentrantLock;而谈到ReentrantLock,不得不谈AbstractQueuedSynchronizer(AQS)!类如其名,抽象的队列式的同步器,AQS定义了一套多线程访问共享资源的同步器框架,许多同步类实现都依赖于它,如常用的ReentrantLock

    2022年8月8日
    12

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号