学习mysql常用的三种备份方法

发布时间:2019-09-21编辑:脚本学堂
本文介绍下,mysql中备份的常用方法,共介绍三种,分别为使用mysqldump工具备份、基于LVM快照备份、使用percona提供的xtrabackup进行备份。有需要的朋友,参考下吧。

二、基于LVM快照备份
在物理备份中 ,有基于文件系统的物理备份(LVM的快照),也可以直接用tar之类的命令打包。但这些只能进行冷备份
不同的存储引擎能备份的级别也不一样,MyISAM能备份到表级别,而InnoDB不开启每表一文件的话就只能备份整个数据库。

下面就介绍下使用LVM的快照功能进行备份
为了安全 首先在数据库上施加读锁
 

mysql>FLUSH TABLES WITH READ LOCK;

刷新一下二进制日志,便于做时间点恢复
 

mysql>FLUSH LOGS;

然后创建快照卷
 

lvcreate –L 1G –s –n data-snap –p –r /dev/myvg/mydata

最后进入数据库释放读锁
 

UNLOCK TABLES;

挂载快照卷进行备份
 

linuxjishu/9952.html target=_blank class=infotextkey>mount –r /dev/myvg/data-snap /mnt/snap

然后对/mnt/snap下的文件进行打包备份
还原的时候,关闭mysqld,然后备份二进制日志后将原来备份的文件还原进去,然后通过二进制日志还原到出错的时间点(通过二进制还原时间点的时候不要忘了暂时关闭二进制日志)