作者:大苏打的苏打水 | 来源:互联网 | 2023-06-29 13:01
为了保障数据的安全,需要定期对数据进行备份。备份的方式有很多种,效果也不一样。一旦数据库中的数据出现了错误,就需要使用备份好的数据进行还原恢复。从而将损失降到最低。1、为什么要备份
为了保障数据的安全,需要定期对数据进行备份。备份的方式有很多种,效果也不一样。一旦数据库中的数据出现了错误,就需要使用备份好的数据进行还原恢复。从而将损失降到最低。
1、为什么要备份
灾难恢复、审计、测试等操作需求,都需要对数据库进行备份。
2、备份方案设计的建议
在生产实践中,对于大数据库来说,物理备份是必需的,因为逻辑备份太慢并受到资源限制,而且从逻辑备份中恢复也需要很长的时间。
保留多个备份集
定期从逻辑备份(物理备份)中抽取数据进行恢复测试
保存二进制日志用于基于故障时间点的恢复。expire_logs_days参数应该设置得足够长,到少可以从最近两次物理备份中做基于时间点的恢复。
监控备份和备份过程,并验证备份是否正常。
测算恢复所需要的资源和时间。
3、逻辑备份与物理备份
1)逻辑备份
就是将数据包含在一种MySQL能够解析的格式中,要么是SQL,要么是以某个符号分隔的文本。
逻辑备份的优点:
备份与恢复简单、灵活
与存储引擎无关。因为是从MySQL服务器中提取数据而生成,所以消除了底层数据存储的影响。
有助于避免数据损坏。
备份文件可以普通的文本
逻辑备份的缺点:
必须由数据库服务器完成生成逻辑备份的工作,因此需要更多的服务器资源。
逻辑备份在某些场景下比数据库文件本身更大。
无法保证导出后再还原出来的一定是同样的数据。
从逻辑备份中还原需要MySQL加载和解释语句,转化为存储格式。
2)物理备份
直接复制原始文件到要备份的位置。
物理备份的优点:
基于文件的备份,只需要将需要的文件复制到其他地方即可完成。
物理备份的恢复比较简单,取决于存储引擎。
物理备份的恢复更快。因为不需要执行任何SQL或构建索引。
物理备份的缺点:
InnoDB的原始文件通常比生意人逻辑备份要大的多。
物流备份不总是可以跨平台、操作系统及MySQL版本。
4、备份什么
恢复的需求决定需要备份什么,最简单的策略是只备份数据和表定义。主要考虑如下内容:
数据
二进制日志和InnoDB事务日志
代码:触发器、存储过程等
复制配置:(二进制日志、中继日志、日志索引文件和.info文件)
服务器配置(my.cnf文件等)
操作系统文件(定时任务相关配置等)
5、增量备份和差异备份
当数据量很大时,一个常见的策略就是做定期的增量或者差异备份,它们之间的区别是:差异备份是对自上次全备份后所有改变的部份而做的备份,增量备份则是从任意类型的上次备份后所有修改做的备份。