设计 Azure SQL 备份和恢复
恢复 SQL 数据库数据的能力对你而言至关重要。 应考虑实现自动备份 Azure SQL 数据库和 Azure SQL 托管实例。 数据库备份支持将数据库还原到指定的时间点和配置的保留期内。
介绍自动备份
SQL 数据库和 SQL 托管实例都使用 SQL Server 技术,每周创建完整备份,每 12-24 小时创建差异备份,每 5 到 10 分钟创建事务日志备份。 事务日志备份的频率取决于计算大小和数据库活动量。 还原数据库时,服务会确定需要还原哪些完整备份、差异备份和事务日志备份。
完整备份:在完整备份中,将备份数据库和事务日志中的所有内容。 SQL 数据库每周进行一次完整备份。
差异备份:在差异备份中,将备份上次完整备份之后更改的所有内容。 SQL 数据库每 12 -24 小时进行一次差异备份。
事务备份:在事务备份中,将备份事务日志的内容。 如果最新的事务日志失败或损坏,可以选择回退到之前的事务日志备份。 事务备份使管理员能够恢复到特定时间,包括误删数据之前的时间点。 事务日志每 5 到 10 分钟备份一次。
介绍备份用例
可以通过多种方式使用自动备份。
在保留期内将现有数据库还原到过去的时间点。 此操作会在原始数据库所在的同一服务器上创建一个新的数据库,但会使用不同的名称来避免覆盖原始数据库。 还原完成后,可以删除原始数据库。
将已删除的数据库还原到删除时间或者还原到保留期内的任意时间点。 仅可在创建原始数据库所在的同一服务器或托管实例上还原已删除的数据库。
将数据库还原到其他地理区域。 在无法访问主要区域中的数据库和备份时,异地还原可帮助从某个地理区域内发生的灾难中恢复。 它可在任何 Azure 区域中的任意现有服务器或托管实例上创建新的数据库。
从单个数据库或共用数据库的特定长期备份还原数据库。 如果已使用长期保留策略配置了数据库,可以还原旧版本的数据库。
长期备份保留策略
Azure SQL 数据库自动备份最多可在 35 天内还原。 此时间段足以进行日常管理。 但有时可能需要将数据保留更长的时间。 例如,你所在辖区的数据保护法规可能要求你将备份保留数年。
对于这些要求,请使用长期保留 (LTR) 功能。 这样,你可以将 Azure SQL 数据库备份存储在读取访问异地冗余存储 (RA-GRS) blob 中长达 10 年。 如果需要访问 LTR 中的任何备份,可以使用 Azure 门户或 PowerShell 将其还原为新数据库。