試驗環境:
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 [email protected]:/
[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/ [email protected]:/
5.把1.61的php關閉驗證是否訪問到博客
[root@localhost ~]# systemctl stop php-fpm
可以正常訪問,php分離就完成了。