排查由于日志序列号差异而导致的时间点故障恢复故障
在 RDS for SQL Server 中尝试时间点故障恢复(PITR)时,由于日志序列号(LSN)存在差异,您可能会遇到故障。这些差异会阻止 RDS 将数据库还原到所请求的时间,并且 RDS 会将正在还原的实例置于 incompatible-restore
状态。
此问题的常见原因为:
-
手动更改数据库恢复模式。
-
由于用于完成事务日志备份的资源不足,RDS 更改了自动恢复模式。
要确定数据库中的 LSN 差异,请运行此查询:
SELECT * FROM msdb.dbo.rds_fn_list_tlog_backup_metadata(
database_name
) ORDER BY backup_file_time_utc desc;
如果您发现 LSN 差异,您可以:
-
选择 LSN 差异之前的一个还原点。
-
等待并还原到下一次实例备份完成后的某个点。
为防止出现此问题,我们建议您不要手动更改 RDS for SQL Server 数据库的恢复模式,因为这会中断实例的持久性。我们还建议您选择具有足够资源来处理工作负载的实例类型,以确保定期备份事务日志。
有关事务日志管理的更多信息,请参阅 Microsoft SQL Server 文档中的 SQL Server transaction log architecture and management guide