可用性和一致性

已完成

现在,你将了解 Azure SQL 托管实例和 Azure SQL 数据库中的高可用性和灾难恢复体系结构。 如果你有使用 SQL Server 的背景知识,你可能知道如何管理数据库的可用性和一致性。 在本单元中,你将了解如何在 Azure SQL 中执行这些任务。

数据库可用性

在 Azure SQL 数据库和 Azure SQL 托管实例中,不能将数据库状态设置为 OFFLINEEMERGENCY。 如果你仔细想想,OFFLINE 并没有意义,因为你无法附加数据库。 由于无法使用 EMERGENCY,因此你无法执行紧急模式修复,但你应该不需要这样做,因为 Azure 会管理和维护该服务。 Azure SQL 数据库中允许使用其他功能,例如 RESTRICTED_USER 和专用管理连接 (DAC)。

加速数据库恢复 (ADR) 是引擎中内置的一项功能。 使用 ADR 时,将强制截断事务日志,并使用持久版本存储 (PVS)。 使用该技术可以立即执行事务回退,从而解决长期事务中的一个已知问题。 它还允许 Azure SQL 快速恢复数据库。

在 Azure SQL 数据库和 Azure SQL 托管实例中,ADR 可显著提高常规数据库的可用性。 这是 SLA 中的一个重要因素。 由于这些原因,ADR 默认处于启用状态,且无法禁用。

数据库一致性

正如你在本模块的开始部分所了解的那样,数据和备份的多个副本同时本地存在和跨区域存在。 定期执行备份和还原完整性检查。 “丢失写入”和“过时读取”的检测也已就绪。 可以运行 DBCC CHECKDB(无修复),默认情况下 CHECKSUM 处于开启状态。 后端会在可能的情况下进行自动页面修复,并且进行数据完整性错误警报监视。 如果没有任何影响,将在不通知的情况下进行修复。 如果有影响,则会提供主动通知。