备份无小事,所谓做运维不搞备份就是耍流氓,今天分享一下常用的几种mysql备份命令的特点与区别。
首先数据库备份分为冷备和热备,冷备备份的数据只到备份那一刻时间,用于拷贝归档等,热备备份的数据则是实时的用于故障时快速切换。
备份方法一
简单粗暴的拷贝数据库data_dir目录,很多实践表明,直接拷贝数据库完整data_dir目录,在相同mysql版本拷贝进来可正常继续运行,此方法简单快速。副作用未知,对运行中正在写入的数据库进行拷贝可能会出错。
备份方法二
mysqldump命令是mysql官方自带的数据库备份工具,可直接把数据库备份成.sql文件,可还原到其它不同版本的mysql下,兼容性较好。已知副作用,对运行中的数据库做mysqldump,会锁表。
备份方法三
xtrabackup,一个第三方的数据库备份工具,可以在不锁表的时候直接完成数据库的备份,对运行中的数据库备份不会影响数据库的运行,此方法常用于要做多节点时选择的工具。副作用未知,还原也需要使用xtrabackup组件来还原,如果换服务器则需要同样安装。
备份方法四
基于binlog的主从/主主架构的搭建,即A/B两台服务器互备,当任意一台出现故障时快速切换到另一台,做到不影响业务的连续。用于故障转移很合适,要备份历史数据还是需要以上3个方法做备份存档。
#数据库备份#