逻辑卷备份mysql脚本_MySQL备份教程(3)使用LVM逻辑卷进行数据备份教程

通过LVM快照可以快速的备份数据,相比传统的复制粘贴数据到其他分区来讲,快照的优势除了速度快之外还可以不受磁盘数据动态变化的影响,它直接保存一个分区当时状态的元数据。但是有一个要求就是MySQL数据所在分区需要是逻辑卷分区,否则需要先将数据迁移到逻辑卷分区上再进行备份操作,下面是一个完整的迁移数据与备份流程:

一、准备好磁盘并创建LVM快照:

vgcreate mysql_vg /dev/sdb

lvcreate -L 20G -n mysql_lv mysql_vg

lvscan

2、将数据迁移到逻辑卷中

systemctl stop mysqld

mkfs.xfs /dev/mysql_vg/mysql_lv

mount /dev/mysql_vg/mysql_lv /mnt/ #将逻辑卷进行临时挂载

cp -a /var/lib/mysql/* /mnt #拷贝所有数据到新的逻辑卷分区中

umount /mnt #取消临时挂载

echo "/dev/mysql_vg/mysql_lv /var/lib/mysql xfs defaults 0 0" > /etc/fstab #将已有数据的逻辑卷永久挂载

mount -a

systemctl start mysqld

3、为数据库加全局读锁,然后给逻辑卷建立快照,建立快照会占用卷组的空间,通常给快照设置和逻辑卷一样大,避免快照生命周期太快。

mysql > flush tables with read lock; #该终端不要退出,需另启终端执行后面的命令,最后再退出会话自动解锁

lvcreate -s -n mysql_snap -L 1G /dev/mysql_vg/mysql_lv

4、通过lvdisplay可以发现多了一个逻辑卷,这个就是一个快照卷。其中“Allocated to snapshot”和生命周期有关,lvm快照遵循写时复制的原理,会随着逻辑卷本身的不断写入而增多,当达到100%后快照会自我销毁。所以如果快照空间小于逻辑卷的话,逻辑卷可能还没写多少数据就达到了生命周期,这也是为什么第一步里说大小最好一致。

使用快照还原数据方法一:

1、首先删除逻辑卷上的数据以便测试

2、挂载快照到一个新建立的目录,进入目录后就可以看到之前给逻辑卷建立快照时上面的数据,然后把这些数据复制到逻辑卷上就可以了(如果逻辑卷是xfs格式需要先卸载掉逻辑卷后再挂载快照,ext格式的话则可以直接挂载)

使用快照还原数据方法二:

lvconvert --merge /dev/myvg/mysnap #merge自动合并快照和逻辑卷,合并前需要先卸载逻辑卷分区和快照分区。合并后会看到合并进度,并且lvdisplay后发现多的那个逻辑卷已经不存在了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值