更改 Azure SQL 数据库的自动备份设置
适用于:Azure SQL 数据库
本文提供了相关示例来说明如何修改 Azure SQL 数据库的自动备份设置,例如短期保留策略和用于备份的备份存储冗余选项。 有关 Azure SQL 托管实例,请参阅更改 Azure SQL 托管实例的自动备份设置。
备注
本文介绍如何删除设备或服务中的个人数据,并且可用于为 GDPR 下的义务提供支持。 有关 GDPR 的常规信息,请参阅 Microsoft 信任中心的 GDPR 部分和服务信任门户的 GDPR 部分。
可以使用 Azure 门户、Azure CLI、PowerShell 或 REST API 更改默认时间点还原 (PITR) 备份保持期和差异备份频率。 以下示例演示如何将 PITR 保持期更改为 28 天,以及将差异备份更改为 24 小时间隔。
警告
如果缩短当前的保留期,则无法还原到早于新保留期的时间点。 会删除新保留期内不再需要为提供 PITR 而保留的备份。
如果延长当前的保持期,则无法立即在新的保持期内获得恢复到旧时间点的能力。 随着时间的推移,你将获得这一能力,因为系统开始将备份保留更长的时间。
备注
- 这些 API 只影响 PITR 保留期。 如果为数据库配置了长期保留 (LTR),则它不会受到影响。 若要了解如何更改长保留期,请参阅长期保留。
- 超大规模数据库不支持配置差异备份频率,因为差异备份不适用于超大规模数据库。
为 Azure CLI 准备环境:
如需在本地运行 CLI 参考命令,请安装 Azure CLI。 如果在 Windows 或 macOS 上运行,请考虑在 Docker 容器中运行 Azure CLI。 有关详细信息,请参阅如何在 Docker 容器中运行 Azure CLI。
如果使用的是本地安装,请使用 az login 命令登录到 Azure CLI。 若要完成身份验证过程,请遵循终端中显示的步骤。 有关其他登录选项,请参阅使用 Azure CLI 登录。
出现提示时,请在首次使用时安装 Azure CLI 扩展。 有关扩展详细信息,请参阅使用 Azure CLI 的扩展。
运行 az version 以查找安装的版本和依赖库。 若要升级到最新版本,请运行 az upgrade。
使用以下示例更改活动数据库的 PITR 备份保留期和差异备份频率:
# Set new PITR differential backup frequency on an active individual database
# Valid backup retention must be 1 to 35 days
# Valid differential backup frequency must be ether 12 or 24 hours
az sql db str-policy set \
--resource-group myresourcegroup \
--server myserver \
--name mydb \
--retention-days 28 \
--diffbackup-hours 24
可以在创建数据库时为 Azure SQL 数据库中的数据库配置备份存储冗余。 还可以在创建数据库后更改存储冗余。
对现有数据库所做的备份存储冗余更改仅应用于将来的备份。 默认值为异地冗余存储。 有关本地冗余、区域冗余和异地冗余备份存储的定价差异,请参阅 SQL 数据库定价页。
超大规模数据库的存储冗余是独一无二的。 若要了解详细信息,请查看超大规模备份存储冗余。
若要在创建新数据库时配置备份存储冗余,可以使用 az sql db create
命令指定 --backup-storage-redundancy
参数。 可能值为 Geo
、Zone
和 Local
。
默认情况下,Azure SQL 数据库中的所有数据库均使用异地冗余存储进行备份。 如果使用本地冗余或区域冗余备份存储创建或更新数据库,则会禁用异地还原。
下面的示例在具有本地备份冗余的常规用途服务层中创建数据库:
az sql db create \
--resource-group myresourcegroup \
--server myserver \
--name mydb \
--tier GeneralPurpose \
--backup-storage-redundancy Local
可以使用 --backup-storage-redundancy
参数和 az sql db update
命令更新现有数据库的备份存储冗余设置,超大规模数据库和基本数据库除外。 在数据库上应用更改最多可能需要 48 小时。 从异地冗余备份存储切换到本地冗余或区域冗余存储会禁用异地还原。
下面的示例代码将备份存储冗余更改为 Local
:
az sql db update \
--resource-group myresourcegroup \
--server myserver \
--name mydb \
--backup-storage-redundancy Local
在创建超大规模数据库时,请仔细考虑 --backup-storage-redundancy
的配置选项。 对于超大规模数据库,存储冗余只能在数据库创建过程中指定。 之后不能更新它。 所选的存储冗余选项将用于数据库的生存期,以同时实现数据存储冗余和备份存储冗余。 请在超大规模备份存储冗余中了解详细信息。
可以使用活动异地复制将现有的超大规模数据库迁移到不同的存储冗余,这导致的故障时间最短。 也可通过数据库复制或时间点还原迁移到不同的存储冗余。 下面的示例在具有区域冗余的超大规模服务层中创建数据库:
az sql db create \
--resource-group myresourcegroup \
--server myserver \
--name mydb \
--tier Hyperscale \
--backup-storage-redundancy Zone
有关详细信息,请参阅 az sql db create 和 az sql db update。
不能直接更新超大规模数据库的备份存储冗余。 但是,可以将数据库复制命令与 --backup-storage-redundancy
参数一起使用来更改它。 下面的示例将超大规模数据库复制到使用第 5 代硬件和两个 vCore 的新数据库。 新数据库的备份冗余设置为 Zone
。
az sql db copy \
--resource-group myresourcegroup \
--server myserver
--name myHSdb
--dest-resource-group mydestresourcegroup
--dest-server destdb
--dest-name myHSdb
--service-objective HS_Gen5_2
--read-replicas 0
--backup-storage-redundancy Zone
有关语法详细信息,请参阅 az sql db copy。 有关数据库复制的概述,请参阅复制 Azure SQL 数据库中数据库的事务一致性副本。
- 数据库备份是任何业务连续性和灾难恢复策略的基本组成部分,因为数据库备份有助于保护数据免遭意外损坏或删除。 若要了解 SQL 数据库的其他业务连续性解决方案,请参阅业务连续性概述。
- 若要了解如何使用 Azure 门户配置和管理 Azure Blob 存储中的自动备份的长期保留,并从这些备份进行还原,请参阅使用 Azure 门户管理长期备份保留。
- 若要了解如何使用 PowerShell 配置和管理 Azure Blob 存储中的自动备份的长期保留,并从这些备份进行还原,请参阅使用 PowerShell 管理长期备份保留。
- 获取有关如何使用 Azure 门户将数据库还原到某个时间点的详细信息。
- 获取有关如何使用 PowerShell 将数据库还原到某个时间点的详细信息。