博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
lvm快照不停机备份mysql
阅读量:4966 次
发布时间:2019-06-12

本文共 1124 字,大约阅读时间需要 3 分钟。

用lvm快照备份mysql的前题是mysql的/data和log目录都在同一个lv上。不过鉴于一般vg里没有额外的空间做快照,可以选择临时插一个空间足够大的U盘。至于空间多大够用可以这样估计:如果整个数据库的容量约40G,按60MB/s复制,需要复制682秒。如果你的数据库每秒钟写磁盘1MB,那682秒会写682MB。因为有时候数据库多次写的是同一块数据,只会在第一次写的时候把原来的数据复制到快照的空间里。所以快照原则上大于682MB就够了。但是为了避免额外的错误,建议多留一些空间,避免因快照空间满了导致被快照的分区无法写入。如果新加的快照大小大于数据库所在的lv总大小,那就完全不用担心了。

pvcreate /dev/sdd //此处是新添加的磁盘,用fdisk -l查看vgextend VolGroup /dev/sdd //此处的VolGroup通过df -h 加 lvdisplay确认要把pv加到哪个vg里//再启动个终端//登陆mysqlmysql>flush tables with read lock;mysql>flush logs; //再启动个终端执行$ mysql -uroot -p -e 'show master status\g'> ~/master.info//,保存master位置信息 lvcreate -L 10G -s -p r -n snap_data /dev/VolGroup/lv_root//  通过df -h加lvdisplay查看要快照的lv设备,其中10G是空间 -s是快照 -n是名字 -p r代表只读快照mkdir -p /mnt/snapmount /dev/VolGroup/snap_data /mnt/snap/ls /mnt/snap//去刚才锁表的终端,解锁表unlock tables;

此处拷贝/mnt/snap下的数据,复制出去,记得一起复制 ~/master.info和/etc/my.cnf,建slave或者恢复数据的时候会用。

 

//拷贝完后,卸载:umount /mnt/snaplvremove /dev/VolGroup/snap_data//从vg里移除lvvgreduce VolGroup /dev/sdd//确认是否删除可以用vgdisplay -v//删除pvpvremove /dev/sdd

删除后即可正常移除新添加的硬盘了。

其他命令:

lvs查看所有lv的使用情况,可以看到快照使用空间的百分比

vgdispaly -v 查看vg的组成

转载于:https://www.cnblogs.com/xxo0/p/7886513.html

你可能感兴趣的文章
bash中常见环境变量env、set、export 、declare与bash漏洞原理
查看>>
Vue.js 子组件的异步加载及其生命周期控制
查看>>
数据库表结构导出sql语句
查看>>
C++库(Thrift)
查看>>
python问题记录
查看>>
linux基础知识
查看>>
实验三:Linux进程管理(HDU)
查看>>
学习站点
查看>>
20155228 2017-5-31 课堂测试:编写MyOD.java
查看>>
分支语句和循环语句(1)
查看>>
Ubuntu Git安装与使用
查看>>
Unity3D脚本编程--基本概念
查看>>
帝国cms采集关键字方法
查看>>
9月9
查看>>
python random 的用法
查看>>
flaskdebug模式
查看>>
web项目(用户注册)(web分层结构)
查看>>
Jetty源码学习-编译Jetty源码二三事
查看>>
十种排序
查看>>
让linux开机默认开启小键盘
查看>>