MySQL数据备份方法的选择与思考


当前第2页 返回上一页

    延时从库的备份方案中,要控制从库的延时时间,如果设置的过短,可能在主库上引发问题的SQL已经在从库上执行过了,那么就起不到延时的效果,那延时从库就失去意义了。

4、逻辑备份mysqldump

    这可能是最常见的一种MySQL备份方式了,mysqldump这个官方提供的备份工具,可以提供给你某个时间点的一致性快照,可以很清楚的知道当前的时间点,MySQL数据库执行到了那个binlog的位点,恢复的精确性很高。而且,它支持指定库表备份等,功能非常强大。

     它适合数据量在50G以下的数据库备份,超过50G,恢复的时候会特别慢。

     这个不必多说,大家都知道。

     记得加--single-transaction,要不然可能会出现锁表,业务无法写入的问题,曾经有个小兄弟在这里栽倒了。

     它的特点是能够给你某个时间点的数据库快照,而且备份文件总体比较小。

5、xtrabackup备份

    这是另外一种热备份的方式,xtrabackup备份方式可以在不影响数据库写入的情况下对数据库进行热备,本质其实还是物理文件拷贝,比mysqldump的速度要快。

    如果主库读写压力比较小,则可以在主库上直接备份。不过还是建议不要在主库上使用,因为曾经出现过线上主库写入压力比较大,xtrabackup直接把主库备份宕机的情况出现,从库上不停库进行xtrabackup才是相对比较安全的方法。

 它的特点是备份速度快,备份对线上影响比较小。

6、binlog备份

  binlog备份本质上还是SQL语句的备份,类似mysqldump的结果,不过binlog中保留的数据比mysqldump保留的数据多一些。

   如果你拥有这个数据库从启动开始所有的binlog,毋庸置疑,你可以将这个数据库还原出来。但是所有的binlog必定是一个比较比较大的数据量,一般很难保留全量日志,所以binlog备份一般情况下需要搭配快照备份。

    我们可以在一个从库上线停掉复制关系,然后flush log新生成一个binlog,记录为binlog0,然后将这个从库完整的备份拷贝一份,之后保存binlog0往后的所有binlog,这样就能利用从库的完整备份+binlog的方法来恢复从库的数据。

    binlog备份适用于那些binlog写入速度一般的数据库,如果你的数据库binlog刷新的速度很快,那数据容量可能会成为瓶颈。

7、clone plugin

   clone plugin是8.0的一个亮点功能,既可以支持数据备份到本地,也可以支持快速远程拉起一个数据库的从库,是一个值得研究的备份方法。之前的文章中也有详细些过,有兴趣可以去看。也可以参考官方文档。

    但是目前,线上环境使用的比较少,原因是大部分国产数据库目前都停留在MySQL5.7版本,当然,8.0是趋势,没升级的赶快升级吧。

以上就是MySQL数据备份方法该如何选择的详细内容,更多关于MySQL 数据备份的资料请关注其它相关文章!

更多Mysql内容来自木庄网络博客


标签:Mysql

返回前面的内容

相关阅读 >>

如何理解mysql锁机制

myeclipse连接mysql数据库详细步骤

mysql中事务概念的简洁学习教程

mysql怎样更改安装路径?

关于mysql建立新用户并授权的方法

mysql分页性能探索

如何往mysql中添加图片

mysql能干什么

mysql深度分页(千万级数据量如何快速分页)

mysql在cmd和python下的常用操作解析

更多相关阅读请进入《mysql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...