谢邀,个人认为从标题看,是个比较大而且值得数据库从业者思考的问题;从问题描述看,又是一个比较浅显的问题。

先从问题描述看,mysqldump 备份和恢复时往往会有各种错误,如何避免?mysqldump由于是逻辑备份,默认在备份期间会去检查各种备份对象的合法性,所以出现诸如表损坏,视图定义错误等问题,虽然可能不影响数据库的整体运行,但是备份会通不过。谨慎且推荐的做法就是挨个去根据报错处理,直到备份成功和一次数据恢复成功为止,粗暴一点的做法就是加--force强制忽略各种sql类型的报错,因为从理论上来说这些损坏或不合法的数据库对象,不备份也是可以接受和理解的。从答主上万实例的mysqldump备份失败情况分析来看,参考这个应该能解决99%的mysqldump失败

再从广度上来说,如何优雅的备份和恢复mysql数据库?

备份方式的选择

从备份期间是否停服看,热备还是冷备,这个我认为当今的现网运行的数据库系统基本不存在冷备份的场景了(除非是整个系统全部扑街,恢复数据前可能有必要copy一份数据),热备份且能够获取到一致性备份点的热备份是mysql备份系统必须具备的功能。

从备份文件的类型看,无论是逻辑备份还是物理备份,都有其优势和缺陷,都有其不可替代性,而往往逻辑备份的优势正好是物理备份的缺陷。在我看来逻辑备份最大的优势有两点

1 数据压缩率高(因为通常情况下会有不少index,或者碎片空间等,这个很占物理空间,而逻辑备份出来的逻辑sql就可以很大程度地节约这块空间),这个在海量数据库场景下很重要,因为备份占用的空间成本,上传成本也不容忽视

2 备份灵活,兼容性强。打个比方,当一个单机数据库想做分库分表时,数据迁移阶段必然会涉及到一次类似逻辑备份,通过逻辑备份导入分布式数据库环境中(因为不可能通过传输物理备份文件到多个数据库节点)

以上2点也正是物理备份的劣势,而物理备份相对逻辑备份而言的优势也非常明显,备份速度快+恢复速度快,这两点可能在绝大部分场景下更重要,所以现在主流的备份方式应该是物理备份,虽然逻辑备份也存在一些多线程备份的开源工具比如mydumper,但备份速度通常还是不如物理备份。

当然,既然要优雅,在海量数据库备份系统中,我认为两种备份方式都应该支持,可以灵活设置,针对不同的备份方式再开发不同的恢复方式。除此以外,还需要考虑

0 备份和恢复期间对IO等系统资源消耗情况的把控,是否可以做到限速?

1 如何灵活地设置备份策略,比如备份周期和备份时间点的选择,是否可以在从库备份,备份上传到何处,选择什么压缩方式?

2 如何确认备份是否成功,哪一步骤出了问题,哪些步骤失败可以重试,哪些步骤失败不必重试?

3 如何确认成功的备份实际可有效还原?

4 再细一些,mysql为了获取一致性的备份点,必然会有一个flush tables with read lock的加全局锁的操作,如何控制该操作对运行中的实例的可能造成的恶劣影响?

5 再细一些,这个mysql实例是否开启了gtid,针对不同版本的mysql是否也需要有差异化对待?针对有无gtid等场景,备份和恢复策略其实也是有所不同的

.................

所以说,个人看来,要做到一个极致优雅的数据库备份和恢复系统其实很不容易,目前可能也只有公有云才会针对各种各样可能出现的场景和报错处理,将方方面面都考虑全了。

mysql怎么备份和恢复_如何优雅的备份和恢复Mysql数据库?相关推荐

  1. mysql 8.0数据备份恢复_第7章 备份和恢复

    ## 目录 - 备份和恢复类型 - 数据库备份方法 - 例备份和恢复策略 - 使用mysqldump进行备份 - 使用二进制日志进行 - 点时间(增量)恢复 - MyISAM表维护和崩溃恢复 备份数据 ...

  2. rds本地库到rds恢复_阿里云rds 备份和还原

    阿里云rds 备份和还原 转发:https://www.cnblogs.com/lin1/p/8617764.html 转发:https://help.aliyun.com/knowledge_det ...

  3. 爱思助手短信备份到安卓_爱思助手备份/恢复功能介绍

    您可以通过备份 iOS 设备上的数据到电脑中,以便于恢复或者数据的转移.如果您更换了设备,则可以使用原来设备的备份将您的信息恢复到新 iOS 设备中. 爱思助手备份功能分为全备份和分类备份,您可以根据 ...

  4. mysql系统数据库 恢复_电脑重装系统后如何恢复 Mysql 数据库

    电脑重装系统后如何恢复 Mysql 数据库 一.[设置mysql的path] 比如:我的mysql在:D:\DataBase\mysql-5.7.13-winx64,可以在环境变量中重新新建一个环境变 ...

  5. 达梦数据库物理备份恢复_表空间级备份还原

    参考文档<DM8备份恢复手册> 1.表空间级备份还原 联机备份,脱机还原 表空间备份还原的先决条件以及限制条件参考<DM8备份恢复手册>. 1.1 备份 BACKUP V1.0 ...

  6. sqlserver 没有备份误删数据_超实用的Word备份和恢复技巧,职场必备,为你的文件保驾护航!...

    我们平常在使用Word的时候,是不是经常遇到这样的尴尬: 刚做好的2000字分析报告,突然电脑黑屏,忘记保存OMG-- 修改文档后忘记另存为,点了保存,原来的被覆盖了-- 写好的文档保存一半,Word ...

  7. iphone彻底删除照片如何恢复_如何把删除的照片恢复?轻松解决恢复问题!

    如何把删除的照片恢复?轻松解决恢复问题!使用手机的时候,照片可是我们手机中重要的数据,很对人换手机也舍不得删除了以前的照片,有时候会误删了一些手机照片也是常有的事情,那么我们想要找回被删除手机照片应该 ...

  8. initramfs两种方法恢复_苹果手机备忘录删除了怎么恢复?两种方法,解决90%恢复问题...

    苹果手机备忘录删除了怎么恢复? 随着移动办公及生活娱乐需求不断提升,人们逐渐告别了纸笔备忘的需求,转而使用手机备忘去记录较为重要的内容.但是,有时系统升级或误操作将备忘录删除后,苹果手机想要恢复误删备 ...

  9. iphone彻底删除照片如何恢复_手机删除的照片如何恢复?OPPO最新照片恢复

    手机删除的照片如何恢复?小编给大家带来了OPPO最新照片恢复方法,可谓是专属福利啊!手机照片误删,焕发出来的照片很模糊?这有何难!手机照片管家APP竟然可以恢复高清图片, 不过现在安卓机只有OPPO才 ...

最新文章

  1. 企业级Python开发大佬利用网络爬虫技术实现自动发送天气预告邮件
  2. (3)数据库的建立和数据表的操作
  3. 函数调用关系图如何画_乌鲁木齐126中一校三址关系图出炉!佳源和绿谷应该如何选择?...
  4. 阿阳的机器人是谁_《铁甲小宝》里面的机器人角色都有谁
  5. Silverlight的跨站策略和跨站策略文件
  6. Multiavatar头像生成,要多少有多少
  7. RedisCacheManager设置Value序列化器技巧
  8. 默写标准答案0917
  9. Nginx 指令目录(中文版)
  10. Visual Studio Tip 之 如何查看隐形的空格(white space)和制表符(tab)
  11. 软件工程期末复习题库
  12. 智慧城管数字孪生IOC系统
  13. “网贷108条”清单里的信与望 | 一点财经
  14. SUMO交通仿真-核心概念和基础知识速览
  15. js复制一个数组(浅复制、深复制)
  16. Excel函数教程_COLUMN和VLOOKUP实现多字段匹配
  17. ad room 拷贝
  18. 在演讲中如何吸引你的听众技巧
  19. 华为Nova7Pro和华为mate30 哪个好
  20. H3C服务器重做RAID

热门文章

  1. oracle外部表kup-04040,【故障处理】19c PDB中创建外部表时,出现KUP-04040报错
  2. java orm框架什么意思_ORM框架是什么
  3. android电视文件管理器,电视文件管理器
  4. pmp知识点详解-项目大牛整理_PMP第七章:项目成本管理(1)项目管理核心知识点...
  5. 高中经历——高考专业被调剂毁了童年梦想
  6. [网络开发]服务器开发
  7. MySQL中间件之ProxySQL(14):ProxySQL+PXC
  8. 15.django之Django-Rest-Framework
  9. Asprise OCR SDK 15.3试用版破解
  10. MFC中关于虚函数的一些问题