你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
本文介绍使用 Azure 门户管理和监视Azure虚拟机(VM)上运行的SQL Server数据库以及备份到 Azure 备份 恢复服务保管库的常见任务。 Azure 备份允许管理 SQL 数据库备份和 SQL 实例快照备份(预览版)。 还可以使用 Azure CLI 和 REST API 来管理 SQL 数据库备份。 可以监视作业和警报、停止和恢复数据库保护、运行备份作业以及从备份中注销 VM。
如果未为SQL Server数据库配置备份,请参阅 备份 Azure VM 上的SQL Server数据库
若要查看我们今天支持的备份和还原方案,请参阅 支持矩阵。 有关常见问题,请参阅 常见问题。
注意
SQL Server 实例快照备份管理不受 Resiliency 支持。 了解更多有关 SQL Server 实例快照备份(预览版)支持和不支持的场景
配置同时备份
可以将SQL Server流式备份配置为在本地存储和恢复服务保管库中同时存储恢复点和事务日志。
若要配置同时备份,请按照以下步骤进行配置:
转到
C:\Program Files\Azure Workload Backup\bin\plugins位置,然后创建文件 PluginConfigSettings.json(如果不存在)。将逗号分隔的键值实体(包含键
EnableLocalDiskBackupForBackupTypes和LocalDiskBackupFolderPath)添加到该 JSON 文件。在
EnableLocalDiskBackupForBackupTypes下,列出要在本地存储的备份类型。例如,如果要存储完整备份和日志备份,请提及
["Full", "Log"]。 若要仅存储日志备份,请提及["Log"]。在
LocalDiskBackupFolderPath下,提及本地文件夹的路径。 在 JSON 文件中提及路径时,确保使用双正斜杠。例如,如果本地备份的首选路径为
E:\LocalBackup,请将 JSON 中的路径提及为E:\\LocalBackup。最终的 JSON 应显示为:
{ "EnableLocalDiskBackupForBackupTypes": ["Log"], "LocalDiskBackupFolderPath": "E:\\LocalBackup", }如果 JSON 文件中还有其他预填充的条目,请在 右大括号前在 JSON 文件的底部添加上述两个条目。
若要使更改立即生效,而不是常规一小时,请转到 TaskManager>服务,右键单击 AzureWLbackupPluginSvc,然后选择“ 停止”。
注意
此操作将取消所有正在进行的备份作业。
SQL Server数据库的存储备份文件和文件夹结构的命名约定为
{LocalDiskBackupFolderPath}\{SQLInstanceName}\{DatabaseName}。例如,如果 SQL 实例
Contoso下有一个数据库MSSQLSERVER,则文件位于其中E:\LocalBackup\MSSQLSERVER\Contoso。该文件的名称为
VDI device set guid,它用于备份操作。检查
LocalDiskBackupFolderPath下的目标位置是否对 具有 读取 和NT Service\AzureWLBackupPluginSvc权限。注意
对于本地 VM 磁盘上的文件夹,右键单击该文件夹,并在
NT Service\AzureWLBackupPluginSvc”选项卡上配置所需的权限。如果使用网络或 SMB 共享,请从已有权访问共享的用户控制台运行以下 PowerShell cmdlet 来配置权限:
$cred = Get-Credential New-SmbGlobalMapping -RemotePath <FileSharePath> -Credential $cred -LocalPath <LocalDrive>: -FullAccess @("<Comma Separated list of accounts>") -Persistent $true示例:
$cred = Get-Credential New-SmbGlobalMapping -RemotePath \\i00601p1imsa01.file.core.windows.net\rsvshare -Credential $cred -LocalPath Y: -FullAccess @("NT AUTHORITY\SYSTEM","NT Service\AzureWLBackupPluginSvc") -Persistent $true
查看 SQL 数据库和SQL Server实例的备份项
为SQL Server实例(预览版)配置快照备份后,Azure 备份 Azure门户中显示备份项。 Azure为受保护的 SQL 实例创建一个备份项,用于实例级操作。 这些项显示在Azure VM 中的 SQL Server(快照备份)下。
Azure还会为实例中的每个受保护数据库创建单独的备份项。 使用这些项执行数据库级操作,例如还原数据库。 这些项显示在 Azure VM 中的 SQL 数据库下,备份类型为 Snapshot backup。
若要查看数据库备份项,请执行以下步骤:
在 恢复服务保管库 上,选择 “受保护的项>备份项”。
在 Backup 项窗格中,在 Azure VM 中选择所需的数据源类型 -SQL 数据库或 SQL Server Azure VM (快照备份)(预览版)。
在所选数据源备份项窗格中,查看数据库的备份项。
监视 SQL 数据库和SQL Server实例快照的备份作业
Azure 备份允许在Azure门户中监视 SQL 数据库和 SQL 实例快照的备份作业。 以下部分介绍如何监视每个备份类型的备份作业。
监视 SQL 数据库的备份作业
Azure 备份会在 Azure 门户中 Resiliency 下的 Jobs 中显示所有计划操作和按需操作,但计划的日志备份除外,因为这类备份可能会很频繁。 此门户中显示的作业包括数据库发现和注册、配置备份以及备份和还原操作。
有关监视场景的详细信息,请参阅 Azure 门户中的监视 和 使用 Azure Monitor 进行监视。
监视SQL Server实例快照备份的备份作业(预览版)
若要监视Azure VM 备份中的 SQL,请转到 Recovery Services 保管库,然后选择 Monitoring>Backup Jobs。
“ 备份作业 ”窗格提供 备份作业 详细信息。 流式备份的作业随类型 SQLDatabase 一起显示,而快照备份的作业则以 SQLInstance 类型显示。
查看备份警报
Azure 备份通过 Azure Monitor 针对以下 SQL 数据库备份情况发出内置警报:
- 备份失败
- 还原失败
- 配置了不受支持的备份类型
- 工作负荷扩展不正常
- 删除了备份数据
有关支持的警报场景的详细信息,请参阅 Azure 备份 的 Azure Monitor 警报。
要监视数据库备份警报,请执行以下步骤:
在 Azure 门户中,转到 Resiliency选择 Monitoring + Reporting>Alerts。
在“ 警报 ”窗格中,选择 SQL 数据库的 警报规则 以查看触发警报的资源。
要配置这些警报通知,请创建警报处理规则。
了解配置警报通知。
停止对 SQL 数据库和SQL Server实例快照备份的保护
可以在Azure门户中停止对 SQL 数据库或SQL Server实例快照备份的保护。 停止保护时,可以选择保留或删除备份数据。 如果保留备份数据,可以稍后恢复保护。 如果删除备份数据,则无法恢复保护。
以下部分介绍如何停止对 SQL 数据库和SQL Server实例快照备份的保护。
停止对 SQL 数据库的保护
Azure 备份提供以下选项来停止保护 SQL Server 数据库:
- 停止保护并保留备份数据(永远保留):停止所有将来的备份作业来保护 SQL Server 数据库,并永久保留恢复服务保管库中的现有备份数据。 根据 Azure 备份定价,此保留期会产生存储费用。 如果需要,可以使用备份数据还原 SQL Server 数据库,并使用 “恢复备份 ”选项恢复保护。
- 停止保护并保留备份数据(按策略保留):停止所有将来的备份作业保护 SQL Server 数据库,并按策略保留恢复服务保管库中的现有备份数据。 但是,最新的恢复点将被永久保留。 根据 Azure 备份定价,此保留期会产生存储费用。 如果需要,可以使用备份数据还原 SQL Server 数据库,并使用 “恢复备份 ”选项恢复保护。 此功能仅适用于不可变保管库。
- 停止保护和删除备份数据:停止 SQL Server 数据库的未来备份作业并删除所有备份数据。 无法还原 SQL Server 数据库或使用 “恢复备份 ”选项。
要停止数据库的保护,请执行以下步骤:
转到 “复原” 并选择“ 保护清单>受保护的项”。
在受保护的项窗格中,选择 Azure VM 中的 SQL 作为数据源类型,然后从列表中选择受保护的项。
在所选 受保护的项 窗格中,选择要停止保护的数据库实例。
在所选数据库实例窗格中,选择“ 停止备份”。
还可以右键单击数据库实例视图中的特定行,然后选择“ 停止备份”。
在“ 停止备份 ”窗格中,选择是保留还是删除数据。 根据需要提供原因和注释。
选择“停止备份”。
有关删除数据选项的详细信息,请参阅以下常见问题解答:
停止对 SQL 实例快照备份的保护(预览版)
可以在数据库和实例级别停止和恢复快照备份。 可以从备份项详细信息访问“停止备份”和“恢复备份”选项。
实例级别的备份:在实例级别停止备份时,Azure 备份停止实例和所有基础数据库的备份。 可以选择删除数据或保留数据(永远或按策略)。 Azure会无限期保留基础数据库的还原点,而不考虑所选保留或删除选项。 若要删除这些还原点,必须显式停止备份并删除每个数据库的数据。
在数据库级别停止备份:在数据库级别停止备份时,只有所选数据库停止备份。 Azure 会根据你的选择删除或保留还原点。 实例和实例级备份中的其他数据库仍然不受影响。
若要停止Azure VM 中SQL Server实例的备份,请执行以下步骤:
在 恢复服务保管库上,选择 “受保护的项>备份项”。
在 备份项 窗格中,选择 Azure VM 中的 SQL Server(快照备份)(预览)。
在备份项(SQL Server Azure VM (快照备份)(预览版)窗格中,选择与要停止保护的数据库实例对应的 View 详细信息。
在所选数据库实例窗格中,选择“ 停止备份”。
在“停止备份”窗格中,对于“停止备份”级别,选择“保留备份数据”或删除备份数据。
注意
如果要停止对SQL Server实例中特定数据库的保护,对于 Database(s),请选择 View DB 并从列表中选择所需的数据库。
对于原因,请从列表中选择一个合适的选项。
选择 “停止备份 ”以启动停止保护过程。
恢复对 SQL 数据库和SQL Server实例的保护
停止对 SQL 数据库或SQL Server实例的保护(预览),如果选择 重试备份数据选项,则可以稍后恢复保护。 如果不保留备份数据,则无法恢复保护。
若要恢复对 SQL 数据库或SQL Server实例的保护,请执行以下步骤:
打开备份项,并选择“恢复备份”。
在 “备份策略 ”菜单上,选择策略,然后选择“ 保存”。
为 SQL Server 数据库执行按需备份
你可以运行不同类型的按需备份:
- 完整备份
- 仅复制完整备份
- 差异备份
- 日志备份
以下类型的按需备份决定了备份的保留期:
- “按需完整备份”将备份保留最少 45 天,最多 99 年。
- 按需仅复制完整备份接受任何值进行保留。
- 按需差异备份根据策略中设置的计划差异保留来保留备份。
- 按需日志备份根据策略中设置的计划日志保留来保留备份。
有关详细信息,请参阅 SQL Server 备份类型。
若要在 SQL 数据库级别运行按需备份,请执行以下步骤:
转到 恢复服务保管库 ,然后选择 “受保护的项>备份项”。
在 Backup 项窗格中,选择 Azure VM 中的 SQL 数据库。
在备份项(Azure VM 中的 SQL 数据库)窗格中,对于所需的、备份类型为快照的备份项,请选择查看详细信息。
在所选备份项窗格中,选择“ 立即备份”。
在“立即备份”窗格中,选择受支持的备份类型 - 之一“仅复制完整”、“日志”、“完整”或“差异”。
数据库级别支持的按需备份类型取决于是使用流备份还是快照备份创建原始备份项。
选择“确定”。
修改 SQL 数据库的备份策略
通过备份策略修改,可以更改备份频率或保留范围。 对保留期的任何更改都会追溯到所有现有和新恢复点。 减少差异备份的保留期时,会根据新的保留值清理现有差异。 差异备份依赖于之前的完整备份才能进行恢复。 完整备份将保留至最后一个依赖的差异备份的保留期到期为止。
例如,如果将差异保留期从 30 天减少到 15 天,则创建后 15 天会删除差异备份。 但是,相关的完整备份将保留至所有这些差异备份到期为止。 如果差异备份在保留策略更改时处于软删除状态,则应用相同的依赖项规则。 已软删除的备份在保留期到期后会额外保留 14 天,之后才会被永久删除。
若要修改 SQL 数据库备份策略,请执行以下步骤:
策略修改会影响所有关联的备份项,并触发相应的 配置保护 作业。
策略的修改也会影响现有恢复点。 对于在归档层中未保留满 180 天的归档恢复点,删除这些恢复点将产生提前删除费用。 了解详细信息。
不一致的策略
有时,修改策略操作可能导致某些备份项出现不一致的策略版本。 触发修改策略操作后,如果针对该备份项的相应 配置保护 作业失败,则会出现此问题。 它在备份项视图中显示如下:
只需单击一下鼠标即可修复所有受影响项的策略版本:
修改SQL Server实例快照备份的备份策略(预览版)
修改SQL Server实例快照备份(预览版)的保留设置时,更改将应用于所有现有恢复点和将来的恢复点。 但是,添加到现有策略的任何新保留类别(每周、每月或每年)仅适用于将来的恢复点。
若要修改现有的 SQL 实例快照备份策略,请执行以下步骤:
转到 恢复服务保管库 ,然后选择“ 管理>备份策略”。
在 “备份策略 ”窗格中,从列表中选择所需的现有备份策略类型:
Azure VM 中的SQL Server(流式备份)
Azure VM 中的SQL Server(快照备份)
在 “修改策略 ”窗格中,执行所需的更改,然后选择“ 更新”。
更改SQL Server实例快照备份的备份策略(预览版)
若要更改与SQL Server实例快照备份的备份项关联的策略(预览版),请执行以下步骤:
转到 恢复服务保管库 ,然后选择 “受保护的项>备份项”。
在 备份项 窗格中,选择 Azure VM 中的 SQL Server(快照备份)(预览版)。
在“ 备份项 ”窗格中,对于要更改策略的所需备份实例,请选择“ 查看详细信息”。
在所选备份实例窗格中的 “概要”下,选择备份策略。
在“更改备份策略”窗格中的“备份策略”下,从列表中选择一个策略,然后选择“更改”以分配所需策略。
取消注册 SQL Server 实例
在注销服务器之前, 请禁用软删除并删除所有备份项。
删除启用了软删除的备份项会导致保留期为 14 天,需要等待才能删除这些项。 但是,如果在启用软删除的情况下删除了备份项,可以取消删除它们,禁用软删除,并再次删除它们以立即删除。 了解详细信息
删除保管库之前,需要注销SQL Server实例。
若要注销SQL Server实例,请执行以下步骤:
在Vault仪表板中,在“管理选项”下,选择“备份基础设施”。
在“管理服务器”下,选择“受保护的服务器”。
在“受保护的服务器”中,选择要取消注册的服务器。 若要删除保管库,必须取消注册所有服务器。
右键单击受保护的服务器并选择“取消注册”。
重新注册 SQL Server VM 上的扩展
有时,VM 上的工作负荷扩展可能会由于这样或那样的原因而受到影响。 在这种情况下,在 VM 上触发的所有操作都会开始失败。 然后,你可能需要在 VM 上重新注册该扩展。 “重新注册”操作会在 VM 上重新安装工作负荷备份扩展,使操作能够继续。 可以在恢复服务保管库中的“备份基础结构”下找到此选项。
请谨慎使用此选项。 在具有良好扩展的 VM 上触发时,此操作会导致扩展重启。 此操作可能会导致所有正在进行的作业失败。 在触发重新注册操作之前,请检查是否存在一种或多种症状。
修改 Azure VM 中SQL Server实例的备份快照操作(预览版)
Azure 备份允许从 SQL 实例快照备份配置添加或删除数据库。
若要在备份的 SQL 实例中添加或删除数据库,请执行以下步骤:
转到 恢复服务保管库,然后选择 “受保护的项>备份项”。
在 备份项 窗格中,选择 Azure VM 中的 SQL Server(快照备份)(预览版)。
在“ 备份项 ”窗格中,对于要添加或删除数据库所需的备份实例,请选择“ 查看详细信息”。
在所选备份实例窗格中,选择“ 添加新数据库 ”,并将所需的数据库添加到 SQL 备份实例。
若要从 SQL 备份实例中删除数据库,请选择“ 删除数据库”。
在移动/删除已备份的 VM 时管理数据库备份
使用“资源移动”操作来删除或移动已备份的 SQL VM。 此体验取决于新 VM 的以下特征。
| 新虚拟机订阅 | 新 VM 名称 | 新 VM 资源组 | 新虚拟机区域 | 体验 |
|---|---|---|---|---|
| 相同 | 相同 | 相同 | 相同 |
旧 VM 的备份会发生什么情况? 收到一条警报,指出备份在 旧 VM 上已停止。 备份数据将按照最后一个生效的策略保留。 根据策略清理所有备份数据后,可以选择停止保护并删除数据并取消注册旧 VM。 如何获取从旧 VM 到新 VM 的备份数据? 新虚拟机上不会自动触发 SQL 备份。 必须将 VM 重新注册到同一个保管库。 然后,它显示为有效的目标,SQL 数据可以通过备用位置恢复功能还原到最新的可用时间点。 还原 SQL 数据后,SQL 备份将在此计算机上继续。 如果之前已配置,VM 备份将按原样继续。 |
| 相同 | 相同 | 不同 | 相同 |
旧 VM 的备份会发生什么情况? 收到一条警报,指出备份在 旧 VM 上已停止。 备份数据将按照最后一个生效的策略保留。 根据策略清理所有备份数据后,可以选择停止保护并删除数据并取消注册旧 VM。 如何获取从旧 VM 到新 VM 的备份数据? 新虚拟机位于不同的资源组中,因此Azure将其视为新计算机。 必须将 SQL 备份(和 VM 备份(如果以前配置)显式配置为同一保管库。 然后,通过新 VM 的备用位置恢复将旧 VM 的 SQL 备份项还原到最新的可用时间点。 然后,SQL 备份继续。 |
| 相同 | 相同 | 相同或不同 | 不同 |
旧 VM 的备份会发生什么情况? 收到一条警报,指出备份在 旧 VM 上已停止。 备份数据将按照最后一个生效的策略保留。 根据策略清理所有备份数据后,可以选择停止保护并删除数据并取消注册旧 VM。 **如何获取从旧 VM 到新 VM 的备份数据? 由于新虚拟机位于不同的区域,因此必须将 SQL 备份配置到新区域中的保管库。 在配对区域中,可以使用旧 VM 的 SQL 备份项中的跨区域还原,将 SQL 数据还原到最新的可用时间点。 如果新区域是非配对区域,则不支持从之前的 SQL 备份项直接还原。 但是,您可以在“旧”VM 的 SQL 备份项中选择 还原为文件 选项,将数据还原到旧区域中某个 VM 上已装载的共享,然后再将该共享装载到新的 VM 上。 |
| 不同 | 相同或不同 | 相同或不同 | 相同或不同 |
旧 VM 的备份会发生什么情况? 收到一条警报,指出备份在 旧 VM 上已停止。 备份数据将按照最后一个生效的策略保留。 根据策略清理所有备份数据后,可以选择停止保护并删除数据并取消注册旧 VM。 如何获取从旧 VM 到新 VM 的备份数据? 由于新的虚拟机位于不同的订阅中,因此必须将 SQL 备份配置到新订阅中的保管库。 如果它是不同订阅中的新保管库,则不支持从以前的 SQL 备份项直接还原。 但是,可以从旧 VM 的 SQL 备份项中选择还原作为文件选项,将数据复制到旧订阅的 VM 中装载的共享,并将其装载到新 VM。 |
后续步骤
有关详细信息,请参阅排查 SQL Server 数据库备份问题。