mysql工具有哪些 oracle数据库客户端工具使用

数据库备份的重要性毋庸置疑,可以说,它是数据安全的最后一道防线 。鉴于此,对于备份,我们通常会做以下要求:

  • 多地部署对于核心数据库,我们通常有两地三中心的部署要求 。对于备份来说,也是如此 。一个备份应该有多个副本,每个副本存储在不同区域 。
  • 多介质部署一个备份的多个副本应存储在不同介质上,如磁盘和磁带,防止单一介质失效 。
  • 定期检查备份的有效性备份只是在做正确的事情,有没有把事情做对,还得依靠备份的有效性检查 。
前两项,在条件允许的情况下,建议做 。第三项必须做 。
接下来,我们聊聊备份的相关话题,主要包括以下五方面的内容:
  1. 备份的常见分类 。
  2. MySQL中的备份工具 。
  3. mysqlbackup与mysqldump的备份恢复速度对比 。
  4. 如何检测备份的有效性 。
  5. RTO和RPO。
备份的常见分类物理备份 VS 逻辑备份物理备份,顾名思义,就是备份物理文件 。其优缺点如下:
优点:
  • 备份、恢复速度快 。尤其是恢复速度,直接关系着数据库服务的RTO 。
  • 无需实例在线 。在实例关闭的情况下,可直接拷贝文件,不用担心备份的一致性 。关闭实例进行备份,也称之为 “冷备”。
缺点:
  • 备份文件大 。
  • 恢复时,对平台、操作系统、MySQL版本有要求,必须一致或兼容 。
  • 只能在本地发起备份 。
  • 因为是拷贝物理文件,即使文件中存在很多“空洞”(大量delete导致),也无法通过恢复来收缩。
  • 对表的存储引擎有要求,无法备份MEMORY表 。
逻辑备份,备份表的逻辑记录 。其优缺点如下:
优点:
  • 可移植性强 。恢复时,对平台、操作系统、MySQL版本无要求 。
  • 灵活 。尤其是在恢复时,可只恢复一个库或一张表 。
  • 对表的存储引擎没有要求,任何类型的表都可备份 。
  • 备份文件较小 。
  • 可远程发起备份 。
  • 恢复后,能有效收缩空间 。
缺点:
  • 备份、恢复速度慢 。实际上,单论备份速度,多线程备份其实也不慢 。但恢复速度呢,即使是多线程恢复,也很慢 。
  • 备份会”污染”Buffer Pool 。业务热点数据会被备份数据驱逐出Buffer Pool。
离线备份 VS 在线备份离线备份,又可称之为 “冷备”,即实例关闭的情况下进行的备份 。此时,只能进行物理备份,即全量拷贝物理文件 。
在线备份,又可称之为 “热备”,即实例运行过程中进行的备份 。此时,既可进行物理备份,又可进行逻辑备份 。
因对业务侵入较小,线上一般使用在线备份 。
全量备份 VS 增量备份全量备份,即备份整个实例的全量数据 。
增量备份,即只备份上次备份以来,那些发生了”变化”的数据 。
通常来说,基于物理备份来实现增量备份较为简单,以MySQL为例,只需判断数据页的LSN是否发生了变化 。
而对于逻辑备份,就很难实现,如常见的基于某个时间字段来进行增量备份,但其实,很难保证某个时间段之前的数据不被修改或删除 。
MySQL中的备份工具物理备份物理备份相关的工具有: