使用 DPM 备份 SQL Server

重要

此版本的 Data Protection Manager (DPM) 已终止支持。 建议 升级到 DPM 2022

System Center Data Protection Manager (DPM) 为 SQL Server 数据库提供备份和恢复服务。 除了备份 SQL Server 数据库,还可以运行 SQL Server 计算机的系统备份或完整裸机备份。 DPM 可以保护:

  • 独立 SQL Server 实例

  • SQL Server 故障转移群集实例 (FCI)

注意

DPM 2019 UR2 支持使用群集共享卷 (CSV) 的 SQL Server 故障转移群集实例 (FCI)。

此功能支持在 Azure 上使用存储空间直通保护 SQL Server 故障转移群集实例,以及使用 Azure 共享磁盘保护 SQL Server 故障转移群集实例。 DPM 服务器必须部署在 Azure 虚拟机中,以保护 Azure VM 上部署的 SQL FCI 实例。

  • 具有以下首选项的 SQL Server AlwaysOn 可用性组:

    • 优先辅助

    • 仅辅助

    • 基本

    • 任何副本

为什么使用 DPM 备份 SQL Server?

  • DPM 专为保护 SQL Server 的高级配置而设计。

  • 可以将 DPM 设置为每 15 分钟提供一次 SQL Server 保护服务。

  • DPM 可以减少备份工具和 SQL Server 保护日程安排之间可能存在的冲突。

  • DPM 可以在实例级别或数据库级别保护SQL Server。 启用实例级别的保护后,DPM 会检测该实例上的新数据库,并自动将它们添加到其保护组。

  • DPM 的价格实惠。 它非常适合 SQL Server 内存占用较小的组织,并能针对 SQL Server 内存占用较大的组织进行扩展。

  • DPM 具有自助式恢复工具 (SSRT),可扩展数据库管理员的 SQL 数据库自助式恢复选项。

  • 如果要升级到 SQL Server 2014,则 DPM 将继续在SQL Server升级后备份已受保护的数据库。 应避免在 SQL Server 升级过程中备份作业。

先决条件和限制

  • 如果数据库的文件位于远程文件共享上,保护将失败,并显示错误 ID 104。 DPM 不支持保护远程文件共享上的 SQL Server 数据。

  • DPM 无法保护远程 SMB 共享上存储的数据库。

  • 确保将可用性组副本配置为只读

  • 你必须将系统帐户 NTAuthority\System 显式添加到 SQL Server 上的 Sysadmin 组。

  • 在为部分包含的数据库执行备用位置恢复时,你必须确保目标 SQL 实例启用了包含的数据库功能。

  • 在为文件流数据库执行备用位置恢复时,你必须确保目标 SQL 实例启用了文件流数据库功能。

  • 对 SQL Server AlwaysOn 的保护:

    • 在创建保护组时,DPM 将在运行查询时检测可用性组。

    • DPM 将检测故障转移并继续保护数据库。

    • DPM 支持一个 SQL Server 实例的多站点群集配置。

    当你保护使用 AlwaysOn 功能的数据库时,DPM 有以下限制:

    • DPM 将遵循基于备份首选项在 SQL Server 中设置的可用性组的备份策略,如下所示:

      • 首选辅助副本 - 除了主副本是唯一在线副本的情况之外,备份应在辅助副本上进行。 如果有多个次要副本可用,则将选择具有最高备份优先级的节点进行备份。 如果只有主副本 (replica) 可用,则应在主副本 (replica) 上进行备份。

      • 仅辅助副本 - 不应在主副本上执行备份。 如果主副本是唯一在线副本,则不应进行备份。

      • 主副本 - 备份应始终在主副本上进行。

      • 任何副本 - 备份可以在可用性组中的任何可用副本上发生。 将根据每个节点的备份优先级来确定要从中备份的节点。

    注意

    • 备份可以从任何可读副本 (replica) 发生,即主副本、同步辅助数据库、异步辅助数据库。
    • 例如,如果从备份 (排除任何副本 (replica) ,则启用“排除副本”或) 标记为不可读,则不会在任何选项下为备份选择该副本 (replica) 。
    • 如果有多个副本可用且可读,则将选择具有最高备份优先级的节点进行备份。
    • 如果备份在所选节点上失败,则备份操作将失败。
    • 不支持恢复到原始位置。
  • SQL Server 2014 或更高版本备份问题:

准备工作

  1. 部署 DPM - 验证 DPM 是否已正确安装和部署。 如果尚未这样做,请参阅:

  2. 设置存储 - 可以使用 Azure 将备份数据存储在磁盘、磁带和云中。 有关详细信息,请参阅准备数据存储

  3. 设置 DPM 保护代理 - 需要在要备份的每台计算机上安装 DPM 保护代理。 请参阅部署 DPM 保护代理

配置备份

  1. 若要创建保护组,请选择“ 保护>操作>”“创建保护组 ”,在 DPM 控制台中打开 “创建新保护组 ”向导。

  2. 在“选择保护组类型”中,选择“服务器” 。

  3. 在“选择组成员”中,选择要保护的服务器上的 SQL Server 实例。 有关详细信息,请参阅部署保护组

注意

  • 可以选择实例级别的保护或单个数据库的保护。
  • 在实例级别进行保护时,任何添加到该 SQL Server 实例的数据库将自动添加到 DPM 保护。
  • 如果要使用 SQL Server AlwaysOn 可用性组,可以创建包含可用性组的保护组。 DPM 检测到可用性组,并将其在“群集组”下显示。 选择整个组以对其进行保护,这样向组添加的任何数据库都将进行自动保护,或选择单个数据库。 对于 SQL Server 的每个实例,还可以运行系统状态备份或完整裸机备份。 如果你希望能够恢复整个服务器而不只是数据,此功能就很有帮助。
  1. “选择数据保护方法”中,指定要如何处理短期和长期备份。 短期备份会始终先备份到磁盘,然后可以选择使用 Azure 备份从磁盘备份到 Azure 云(短期或长期)。 作为长期备份到云的替代方法,还可以将长期备份配置到连接到 DPM 服务器的独立磁带设备或磁带库。

  2. 在“选择短期目标”中,指定想要在磁盘上备份到短期存储的方法。 在“保留期”中,指定想在磁盘上保留数据的时间。 在“同步频率”中,指定要对磁盘运行增量备份的频率。 如果不想设置备份间隔,可以选择“ 就在恢复点之前 ”,以便 DPM 在计划每个恢复点之前运行快速完整备份。

    注意

    SQL Server以日志传送、处于只读模式或使用简单恢复模式的数据库不支持增量备份。 仅在每次快速完整备份时创建恢复点。 对于所有其他 SQL Server 数据库,同步将传输事务日志备份,而且每次增量同步和快速完整备份都会创建恢复点。 事务日志是指从上次备份事务日志以来对数据库执行的所有事务的连续记录。

  3. 若希望将数据长期存储到磁带,在“指定长期目标”中,指明想要保留磁带数据的时间(1-99 年)。 在“备份频率”中,指定磁带备份应运行的频率。 该频率基于指定的保持期:

    • 当保持期为 1-99 年时,可以选择每天、每周、每两周、每月、每季度、每半年或每年备份一次。

    • 保持期为 1-11 个月时,可以选择每天、每周、每两周或每月备份一次。

    • 保持期为 1-4 周时,可以选择每天或每周备份一次。

    在独立磁带驱动器上,对于单个保护组,DPM 将同一磁带用于每日备份,直到磁带上的空间不足。 还可以将不同保护组的数据归置在磁带上。

    “选择磁带和库详细信息 ”页上,指定要使用的磁带/库,以及是否应在磁带上压缩和加密数据。

  4. 在“检查磁盘分配”页中,检查为保护组分配的存储池磁盘空间。

    总数据大小”是要备份的数据大小,“要在 DPM 上设置的磁盘空间”是 DPM 建议的保护组空间。 DPM 将根据这些设置选择理想的备份卷。 但是,你可以在“磁盘分配详细信息”中编辑备份卷选项。 对于工作负荷,请在下拉菜单中选择首选的存储。 编辑时,更改的是“可用磁盘存储”窗格中的“总存储”和“可用存储”值。 预配不足的空间是 DPM 建议将存储量添加到卷,以便将来顺利地继续备份。

  5. 在“选择副本创建方法”中,选择要如何处理初始完整数据复制。 如果选择通过网络复制,建议选择非高峰时间。 如果数据量很大或者网络状态欠佳,请考虑使用可移动媒体脱机复制数据。

  6. 在“选择一致性检查选项”中,选择要如何自动执行一致性检查。 你可以让检查仅在副本数据变得不一致时进行,或者按计划进行。 如果不想配置自动一致性检查,可以随时运行手动检查,方法是右键单击 DPM 控制台的“保护”区域中的保护组,然后选择“执行一致性检查”。

  7. 如果选择使用 Azure 备份备份到云,请在“指定联机保护数据”页上,确保选择要备份到 Azure 的工作负载。

  8. 在“指定在线备份计划”中,指定增量备份到 Azure 的频率。 可将备份计划为每日/每周/每月/每年运行,并指定运行备份的时间/日期。 备份一天最多可以进行两次。 每次运行备份时,都会从存储在 DPM 磁盘上的备份数据的副本在 Azure 中创建一个数据恢复点。

  9. 在“指定在线保留策略”中,可以指定如何在 Azure 中保留通过每日/每周/每月/每年备份创建的恢复点。

  10. 在“选择在线复制”中,指定如何进行数据的初始完整复制。 可以通过网络复制,也可以执行脱机备份(脱机设定种子)。 脱机备份使用 Azure 导入功能。 有关详细信息,请参阅使用 Azure Data Box 进行脱机种子设定

  11. 在“摘要”页上,查看设置。 选择“ 创建组”后,将进行数据的初始复制。 完成后,“状态”页上的保护组状态将显示为“正常” 。 然后,将根据保护组设置开始进行备份。

监视

创建保护组后,将进行初始复制,DPM 开始备份和同步SQL Server数据。 DPM 将监视初始同步和后续备份。 可使用以下两种方式监视 SQL Server 数据:

  • 使用默认 DPM 监视可以通过发布警报和配置通知为主动监视设置通知。 对于严重、警告或参考性警报以及实例化恢复状态,可以通过电子邮件发送通知。

  • 如果使用 Operations Manager,则可以集中发布警报。

设置监视通知

  1. 在 DPM 管理员控制台中,选择“ 监视>操作>选项”。

  2. 选择“SMTP 服务器”,键入服务器名称、端口以及用于发送通知的电子邮件地址。 该地址必须为有效地址。

  3. “经过身份验证的 SMTP 服务器 ”中,键入用户名和密码。 用户名和密码必须是上一步中描述其“发件人”地址的人员的域帐户名;否则,通知传递会失败。

  4. 若要测试 SMTP 服务器设置,请选择“ 发送测试电子邮件”,键入希望 DPM 在其中发送测试邮件的电子邮件地址,然后选择“ 确定”。 选择“选项”>“通知”,并选择收件人希望收到的警报类型 。 在 “收件人”中,键入希望 DPM 向其发送通知副本的每个收件人的电子邮件地址。

使用 Operations Manager 设置警报

  1. 在 DPM 管理员控制台中,选择“监视>操作>选项”>“警报发布>发布活动警报

  2. 启用 警报发布后,可能需要用户操作的所有现有 DPM 警报都会发布到 DPM 警报 事件日志。 在 DPM 服务器上安装的 Operations Manager 代理随后会将这些警报发布到 Operations Manager,并在生成新警报时继续更新控制台。

允许 SQL Server 管理员还原数据

DPM 提供自助恢复功能,允许 SQL Server 管理员访问受 DPM 保护的数据,以便他们将 SQL Server 数据库从备份还原到网络文件夹。 可以设置 DPM Self-Service 恢复配置工具,以创建和管理指定哪些用户可以执行自助恢复的角色。 然后,用户使用 DPM Self-Service 恢复向导恢复SQL Server数据库。

DPM 2022 UR1 提供自助恢复功能,允许SQL Server管理员访问 DPM 保护的数据,以便他们可以将SQL Server数据库从备份还原到网络文件夹。 可以设置 DPM Self-Service 恢复配置工具,以创建和管理指定哪些用户可以执行自助恢复的角色。 然后,用户可以使用 DPM 自助恢复向导恢复 SQL Server 数据库。 下载 自助恢复向导工具。 请注意,需要安装 .NET 3.5 SP1Visual Studio 2013才能运行该工具。

如下所示,配置 SQL Server 自助恢复:

  1. 在 DPM 控制台“保护”中>,选择“配置自助恢复”。

  2. 在 DPM Self-Service 用于SQL Server的恢复配置工具中,选择“创建角色”。

  3. 在“安全组”页,创建一个或多个包含要对其启用自助恢复的用户的组。 以 domain\security group 格式指定安全组,或以 domain\username 格式指定单个用户。 您可以将多个组和用户添加到 DPM 角色中。

  4. 在“恢复项”页上,指定要允许自助恢复的受保护SQL Server实例和数据库。 以<计算机名\实例名>格式指定实例。 若要指定数据库,请按 TAB 键,然后键入数据库名称。 或者,若要使角色用户能够恢复实例上的所有数据库,请按 TAB 键,然后按空格键清除 “数据库名称” 列中的文本。

注意

使 DPM 角色的用户能够恢复SQL Server实例上的所有SQL Server数据库时,这些用户还可以恢复随后添加到实例的任何SQL Server数据库。 使用 DPM 角色启用访问权限时,请确保已向角色的所有成员授予查看和访问所有数据库的相应权限。

  1. 在“恢复目标位置”页上,若要限制角色用户的恢复位置,请选择“允许用户将数据库恢复到SQL Server的另一个实例,并指定允许的一个或多个恢复目标位置和文件路径。 如果要允许实例上的任何路径,请不要在 “恢复的文件路径”中指定值。 如果启用此设置,用户可以将数据库文件恢复到他们具有写入权限的任何位置。 但是,用户无法覆盖原始数据库文件,如果用户尝试覆盖原始数据库文件,DPM Self-Service 恢复工具 (SSRT) SQL Server会阻止它们。

  2. 此外,在将运行自助恢复的计算机上,请确保至少安装了 .NET framework 4.5 并安装了 DPM Self-Service 恢复工具。 该工具位于 DpmSqlEURInstaller 文件夹中的 DPM 产品安装位置。

还原 SQL Server 数据

可通过以下步骤恢复 SQL 数据:

  • 将数据库恢复到原始位置

  • 将具有新名称的数据库恢复到其原始位置或其他 SQL Server 实例

  • 将数据库恢复到其他 SQL Server 实例

  • 将数据库复制到网络文件夹

  • 将数据库复制到磁带

无法将系统数据库恢复到SQL Server的其他实例。

请按以下步骤从 DPM 控制台恢复数据库:

  1. 在 DPM 管理员控制台中,选择导航栏上的“ 恢复 ”。 使用浏览功能选择要恢复的数据库。

  2. 在日历上,以粗体选择任意日期以获取该日期可用的恢复点。 “恢复时间” 菜单列出每个可用恢复点的时间。 在“恢复时间” 菜单上,选择要使用的恢复点。

  3. “操作 ”窗格中,选择“ 恢复 ”以启动恢复向导。

  4. “查看恢复选择 ”页上,选择“ 下一步”。

注意

  • 选择希望恢复数据库的位置。 如果选择“ 恢复到任何 SQL 实例”,请输入恢复路径。 你可以为恢复的数据库指定新名称。 此选项在设置 “最新恢复点”时不可用。
  • 默认恢复路径为原始位置路径。 必须输入相应的恢复路径。
  • 无法将较新版本的 SQL Server 数据库恢复到较低版本的 SQL Server 实例。
  • 如果选择“复制到网络文件夹”,且选择的恢复点未从快速完整备份中创建,则可以选择新的恢复点。
  • 如果选择“复制到磁带” ,且选择的恢复点未从快速完整备份中创建,则可以选择新的恢复点。 对于磁带选项,你将选择要用于恢复的磁带库。
  1. 如果在“指定数据库状态”页上选择了“ 最新 ”以外的恢复点,请选择“ 使数据库保持运行状态”。

  2. 为网络带宽使用限制、基于 SAN 的恢复和电子邮件通知指定恢复选项,然后选择“下一步”。

  3. “摘要 ”页上,查看恢复设置,然后选择“ 恢复”。

有自助恢复权限的用户应按以下步骤进行恢复:

使用 DPM 2022 UR1,单独下载 SQL Server 自助服务恢复工具以将其用于 Self-Service 恢复。

  1. 用户应打开 DPM Self-Service 恢复工具,选择“ 连接到 DPM 服务器 ”并指定 DPM 服务器名称。

  2. 建立连接后,用户应选择“ 新建恢复作业 ”以启动恢复向导。

  3. 在向导的“指定数据库详细信息”页上,指定要恢复的SQL Server实例和数据库名称。 如果使用可用性组,请以 AGNAME 格式指定组名称 。ClusternameFQDN\AGNAME

  4. 在“ 指定恢复点 ”页上,选择恢复点的数据和时间。

  5. “选择恢复类型”页上,选择是恢复到同一SQL Server上的任何实例,还是恢复到其他实例。 指定是否恢复到网络文件夹。

    注意

    只有从完整快速备份创建的恢复点才能恢复到网络文件夹。

  6. 如果要恢复到数据库,请在“ 指定数据库状态 ”页上指定数据库在恢复后是否应保持正常运行,并指定是否要复制 SQL 事务日志。

  7. “指定恢复选项” 页上,指定是要保留源服务器的安全设置,还是从目标服务器应用设置。 还可以指定在恢复完成后应发送电子邮件通知。