在一些对数据可靠性要求很高的行业如银行、证券、电信等,如果发生意外停机或数据丢失其损失会十分惨重。为此数据库管理员应针对具体的业务要求制定详细的数据库备份与灾难恢复策略,并通过模拟故障对每种可能的情况进行严格测试,只有这样才能保证数据的高可用性。数据库的备份是一个长期的过程,而恢复只在发生事故后进行,恢复可以看作是备份的逆过程,恢复的程度的好坏很大程度上依赖于备份的情况。此外,数据库管理员在恢复时采取的步骤正确与否也直接影响最终的恢复结果。
下面是动力节点在线为大家总结的数据库备份的20条建议,希望能够完美地帮助我们解决数据库的数据安全性问题。
- 定期进行数据备份(完备或差异备份)和日志备份。
- 使用压缩备份来减少磁盘空间占用和提高备份效率。
- 定期检查磁盘剩余空间和备份文件增长情况,以确保有足够空间进行下一次备份。
- 使用校验和(CHECKSUM)来检查数据完整性。
- 使用RESTORE VERIFYONLY来验证备份可用性。
- 根据数据变动情况决定完整备份和差异备份的频率。
- 根据日志生成速度来决定日志备份的频率。
- 优先使用脚本来备份数据库。
- 如果使用维护计划备份,请确认是否需要生成“报告和记录”。
- 定期检查日志文件大小和VLF数量。
- 定期清理msdb数据库中备份和还原记录。
- 在磁盘空间充足条件下,应在本地保留一份最新备份(最后一次完备及之后备份文件)。
- 定期复制数据库备份至其他服务器,并定期检查异地备份。
- 在备用服务器上还原数据库以测试备份可用性,并运行DBCC CHECKDB来检查数据完整性。
- 定期归档历史数据,条件允许情况下,应将历史数据归档到专门存放历史记录的数据库。
- 除有特殊需求修改数据库恢复模式外,应保证数据库运行在完整恢复模式下。
- 当数据库从简单恢复模式切换到完整恢复模式下,应立即完整备份或差异备份来修复断裂的日志链。
- 当数据库从大日志恢复模式切换到完整恢复模式下,应立即日志备份,以保证此后可按照时间点还原。
- 在做任何可能存在风险的操作前,请确保先确保备份有效。
- 维护一个列表,记录数据库进行备份的频率、路径以及异地备份的路径等信息,以便故障时能第一时间找到备份。