19、lnmp_mysql、nfs组件分离
19.1、LNMP一体机的数据库分离成独立的数据库:
1、根据以上学习过的方法在db01服务器上安装独立的mysql数据库软件:
2、在web01服务器上导出原先的数据库:
[root@web01 tools]# mysqldump -uroot -p123456 -R --single-transaction --master-data=1 -F -B wordpress | gzip>bak.sql.gz
#-A: 备份所有的库,也可以单独指定库;
3、拷贝导出的数据库到db01服务器上:
[root@web01 tools]# scp -P22 bak.sql.gz root@172.16.1.51:/tmp/
4、在db01数据库上还原在web01上导出的数据库:
[root@db01 tmp]# gzip -d bak.sql.gz
[root@db01 tmp]# mysql -uroot -p123456 </tmp/bak.sql
[root@db01 tmp]# mysql -uroot -p123456 -e "show databases;"
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| wordpress |
+--------------------+
[root@db01 tmp]# mysql -uroot -p123456 -e "use wordpress;show tables;"
+-----------------------+
| Tables_in_wordpress |
+-----------------------+
| lc_commentmeta |
| lc_comments |
| lc_links |
| lc_options |
| lc_postmeta |
| lc_posts |
| lc_term_relationships |
| lc_term_taxonomy |
| lc_termmeta |
| lc_terms |
| lc_usermeta |
| lc_users |
+-----------------------+
5、为worpress数据库设置管理用户和访问的网段:
[root@db01 tmp]# mysql -uroot -p123456
mysql> grant all on wordpress.* to wordpress@'172.16.1.%' identified by '123456';
6、关闭web01服务器上的数据库,关闭开机自启动功能:
[root@web01 tools]# /etc/init.d/mysqld stop
Shutting down MySQL.. [确定]
[root@web01 tools]# chkconfig mysqld off
[root@web01 tools]# chkconfig --list mysqld
mysqld 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
7、更改wb01服务器上nginx中php的配置:
[root@web01 tools]# cd /application/nginx/html/php/
[root@web01 php]# vim wp-config.php
/** MySQL主机 */
define('DB_HOST', '172.16.1.51');
8、访问网页:
9、查看数据库中的内容:
[root@db01 tmp]# mysql -uroot -p123456
mysql> use wordpress; #切换用户管理的库;
Database changed
mysql> select * from lc_posts\G; #\G代表进行竖行显示;
*************************** 1. row ***************************
ID: 1
post_author: 1
post_date: 2018-11-22 14:31:27
post_date_gmt: 2018-11-22 06:31:27
post_content: 欢迎使用WordPress。这是您的第一篇文章。编辑或删除它,然后开始写作吧!
post_title: 世界,您好!
post_excerpt:
post_status: trash
comment_status: open
ping_status: open
post_password:
post_name: hello-world__trashed
to_ping:
pinged:
post_modified: 2018-11-22 21:49:16
post_modified_gmt: 2018-11-22 13:49:16
post_content_filtered:
post_parent: 0
guid: http://www.php.com/?p=1
menu_order: 0
post_type: post
post_mime_type:
comment_count: 1
19.2、将lnmp,web01服务器的上传目录独立分离到nfs服务器上,这样就可以保证访问任何一台web服务器都能够访问到相同的资源:
1、需要注意的是nfs目录和nginx,php目录的虚拟用户要保持一致性;
[root@web01 ~]# id nginx
uid=889(nginx) gid=889(nginx) 组=889(nginx)
[root@nfs01 ~]# cat /etc/exports
/data 172.16.1.0/24(rw,sync,all_squash,anonuid=889,anongid=889)
[root@nfs01 ~]# useradd -u 889 -Ms /sbin/nginx nginx
[root@nfs01 ~]# id nginx
uid=889(nginx) gid=889(nginx) 组=889(nginx)
[root@nfs01 ~]# chown -R nginx:nginx /data/
[root@nfs01 ~]# ls -ld /data
drwxr-xr-x 3 nginx nginx 4096 11月 2 15:29 /data
[root@nfs01 ~]# /etc/init.d/nfs reload
2、挂载nfs共享存储:
[root@web01 ~]# rpm -qa rpcbind nfs-utils
nfs-utils-1.2.3-78.el6.x86_64
rpcbind-0.2.0-16.el6.x86_64
[root@web01 ~]# chkconfig --list rpcbind
rpcbind 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
[root@web01 ~]# showmount -e 172.16.1.31
Export list for 172.16.1.31:
/data 172.16.1.0/24
[root@web01 ~]# cd /application/nginx/html/php/wp-content/uploads
[root@web01 uploads]# ls
2018
[root@web01 uploads]# mv 2018/ /tmp/ #导出原来的图片
[root@web01 uploads]# mount -t nfs 172.16.1.31:/data/ /application/nginx/html/php/wp-content/uploads/
[root@web01 uploads]# df -h
172.16.1.31:/data/ 57G 1.7G 53G 4% /application/nginx-1.8.1/html/php/wp-content/uploads
3、把挂载nfs共享存储加入到开机自启中:
[root@web01 /]# vim /etc/rc.local
mount -t nfs 172.16.1.31:/data/ /application/nginx/html/php/wp-content/uploads/
提示:另外 下面两个需要加入到开机自启动之中:
/application/nginx/sbin/nginx #启动nginx
/application/php/sbin/php-fpm #启动php
4、测试:
图片没有了:
5、还原图片
[root@web01 uploads]# cp -av /tmp/2018/ .#
刷新页面:
6、查看用户上传的图片和文件:
[root@nfs01 11]# pwd
/data/2018/11
[root@nfs01 11]# ls -l
-rw-r--r-- 1 nginx nginx 42545 11月 22 21:56 323415-1024x576.jpg
-rw-r--r-- 1 nginx nginx 55651 11月 22 21:56 323415-1200x675.jpg
-rw-r--r-- 1 nginx nginx 3715 11月 22 21:56 323415-150x150.jpg
-rw-r--r-- 1 nginx nginx 6668 11月 22 21:56 323415-300x169.jpg
-rw-r--r-- 1 nginx nginx 26806 11月 22 21:56 323415-768x432.jpg
-rw-r--r-- 1 nginx nginx 457776 11月 22 21:56 323415.jpg
[root@web01 11]# pwd
/application/nginx/html/php/wp-content/uploads/2018/11
[root@web01 11]# ls -l
-rw-r--r-- 1 nginx nginx 42545 11月 22 21:56 323415-1024x576.jpg
-rw-r--r-- 1 nginx nginx 55651 11月 22 21:56 323415-1200x675.jpg
-rw-r--r-- 1 nginx nginx 3715 11月 22 21:56 323415-150x150.jpg
-rw-r--r-- 1 nginx nginx 6668 11月 22 21:56 323415-300x169.jpg
-rw-r--r-- 1 nginx nginx 26806 11月 22 21:56 323415-768x432.jpg
-rw-r--r-- 1 nginx nginx 457776 11月 22 21:56 323415.jpg
19、lnmp_mysql、nfs组件分离的更多相关文章
- 第19讲- UI组件之_Button、checkbox、radio
第19讲 UI组件之_Button.checkbox.radio 四.按钮Button Button继承自TextView,间接继承自View.当用户对按钮进行操作的时候,触发相应事件,如点击,触摸. ...
- 记录一次vxworks下使用NFS组件的过程
问题:有三块CPU都运行vxworks6.9,现在想要CPU3做server,CPU1-2通过NFS访问CPU3上的文件 补充:使用防火墙可能会影响NFS访问,目前我还没有找到解决办法... 下面是过 ...
- React 设计模式 --- Container and Presentational pattern(容器和展示组件分离)
在React开发中,一个典型的React组件通常会混杂着逻辑操作部分和展示部分.逻辑操作部分指的是和页面UI无关的内容,如API的调用,数据的处理,事件处理函数. 展示部分则指的是创建页面UI 的内容 ...
- 19,django组件之contenttype(一)
django组件之contenttype(一) 方式1:适用于1张表和另一张表要关联的时候. 1.路飞学成表设计: 2.将2个价格策略表合并1张表. 3.如果再加一张表,那价格策略表的表结构会发生改变 ...
- HarmonyOS三方件开发指南(19)-BGABadgeView徽章组件
目录: 1.引言 2.功能介绍 3.BGABadgeView 使用指南 4.BGABadgeView 开发指南 5.<HarmonyOS三方件开发指南>系列文章合集 引言 现在很多的APP ...
- SpringBootSecurity学习(19)前后端分离版之OAuth2.0 token的存储和管理
内存中存储token 我们来继续授权服务代码的下一个优化.现在授权服务中,token的存储是存储在内存中的,我们使用的是 InMemoryTokenStore : 图中的tokenStore方法支持很 ...
- 网站集群架构(LVS负载均衡、Nginx代理缓存、Nginx动静分离、Rsync+Inotify全网备份、Zabbix自动注册全网监控)--技术流ken
前言 最近做了一个不大不小的项目,现就删繁就简单独拿出来web集群这一块写一篇博客.数据库集群请参考<MySQL集群架构篇:MHA+MySQL-PROXY+LVS实现MySQL集群架构高可用/高 ...
- IoC之AutoFac(一)——简单使用和组件注册
阅读目录 一.AutoFac简单使用 二.注册 2.1 注册方式 2.2 带参数注册 回到顶部 一.AutoFac简单使用 1 namespace AutofacDemo 2 { 3 class Pr ...
- Ubuntu搭建NFS
NFS全称是Network File System,网络文件系统.它可以通过网络实现文件共享.其结构图大概是这样的: 在机器E上开启NFS服务,机器ABCD都挂载NFS,这样可以实现机器ABCD共享文 ...
随机推荐
- Docker Swarm(九)资源限制
资源限制 docker run 針對限制容器資源有許多設置選項,但Swarm中的 docker service 是另一回事,目前只有cpu和memory的選項可以操作. 如果 docker 找不到足夠 ...
- CentOS下cpu分析 top
CentOS下 cpu 分析-top 时间:2017-03-20 12:09来源:linux.it.net.cn 作者:IT 一. 前言 我们都知道windows下对各个运行的任务,要通过任务管理 ...
- HDFS 的内存存储是什么?
引言 HDFS 的定位就是一个文件系统,用于存储文件,而 HDFS 对于文件的存储方式有两种: 内存存储 异构存储 内存存储 什么是内存存储? 首先,我们来了解一下到底什么是 "内存存储&q ...
- origin2018去掉demo水印
消除demo字样 有的origin破解完成后,使用没问题,但导出的图有demo水印.其实不需要重装,只需要下载一个补丁即可解决. 1. 把下载到的origin.exe复制到安装文件夹 2. 双击执行一 ...
- 利用MathType快速提取论文中的公式
首先随便打开一个论文,比如下图,我们想提取公式(2.2.7) 第一步:按截图快捷键:Win+Shift+S ,把公式截取下来 第二步:打开大佬开发的网站:https://mathf.itewqq.cn ...
- Arduino+AS608指纹锁避坑记
Arduino+AS608指纹锁避坑记 .title { text-align: center; margin-bottom: 0.2em } .subtitle { text-align: cent ...
- 20192113 2020-2021-2 《Python程序设计》实验三报告
20192113 2020-2021-2 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 1921 姓名: 衣丽莎 学号:20192113 实验教师 ...
- 【补档_STM32单片机】脉搏波采集显示硬件设计
一.脉搏波简介 脉搏一般情况下指的都是动脉脉搏.每分钟的脉搏次数称为脉率,正常情况下与心率是一致的.心脏的一次收缩和舒张成为一个心动周期.在每个心动周期内,心室的收缩和舒张会引起脉内压力的周期性波 ...
- VMware vRealize Suite 8.3 发布 - 多云环境的云计算管理解决方案
概述 VMware vRealize Suite 是一种多云环境的云计算管理解决方案,为 IT 组织提供了一个基于 DevOps 和 ML 原则的基础架构自动化.一致运维和监管的现代平台. vReal ...
- GO语言复合类型03---切片
切片相当于长度可以动态扩张的数组 array[start:end]从数组身上截取下标为[start,end)片段,形成切片start代表开始下标,不写默认代表从头开始切end代表结束下标(本身不被包含 ...