备份 DPM 服务器
若要确保在 System Center Data Protection Manager (DPM) 失败时可以恢复数据,需要一个用于备份 DPM 服务器的策略。 如果未备份,则需要在发生故障后手动重新生成它,并且基于磁盘的恢复点将无法恢复。 可以使用几种方法备份 DPM 服务器:
备份 DPM 服务器 - 可以使用辅助 DPM 服务器备份主 DPM 服务器。 辅助服务器将保护主服务器上存储的主服务器数据库和数据源副本。 如果主服务器出现故障,则辅助服务器可以继续保护由主服务器保护的工作负荷,直到主服务器再次可用为止。 如果需要重新生成主服务器,可以从辅助服务器还原数据库和副本。 当主服务器不可用时,还可以将数据直接从辅助服务器还原到受保护的计算机。 可以设置两个服务器,一个作为主服务器,另一个作为辅助服务器,或将每个服务器配置为另一个服务器的主服务器。 您还可以配置 DPM 服务器链,其中的 DPM 服务器按照链顺序相互保护。
备份 DPM 服务器 - 可以将 DPM 服务器配置为将其自己的数据库备份到其磁带库中,也可使用非 Microsoft 软件将数据库备份到磁带或可移动媒体中。
使用第三方软件备份 DPM - 可以使用支持 DPM 和 VSS 的第三方软件备份 DPM 服务器。
使用辅助 DPM 服务器进行备份
在下列任何配置中,DPM 服务器上的信息可以使用另一台 DPM 服务器来进行备份和保护:
主要到辅助保护 - 可将存储在主 DPM 服务器上的数据库和副本备份到辅助 DPM 服务器。 如果主服务器失败,辅助服务器将继续备份受保护的工作负荷。 如果主服务器失败,可以执行以下任一操作:重新生成主服务器并从辅助服务器还原其数据库和副本。 然后将受保护的工作负荷移回重建的主服务器。 选择将保护切换到辅助 DPM 服务器。 通过此设置,可以在需要时直接从辅助服务器还原到受保护的计算机。 有关说明,请参阅 Set up secondary servers。
DPM 链接 - DPM 服务器链 提供保护,每个服务器保护链中的下一个服务器。 例如:DPM1 由 DPM2 保护(DPM1 是主服务器,DPM2 是辅助服务器)。 DPM2 由 DPM3 保护(DPM2 是主服务器,DPM3 是辅助服务器)有关说明,请参阅“设置链接”。
循环保护 - 一台 DPM 服务器由另一台 DPM 服务器备份,反之亦然。 例如,如果 DPM1 保护 DPM2,则 DPM2 保护 DPM1。 对于小型环境,这非常有用。
设置主要和辅助保护
使用辅助 DPM 服务器备份主 DPM 服务器:
主 DPM 服务器已安装保护代理。 需要将此保护代理附加到辅助 DPM 服务器。
重要
主 DPM 服务器和辅助 DPM 服务器的主版本和次要版本必须匹配。
按照以下步骤附加代理:
- 在辅助 DPM 服务器的 DPM 管理员控制台中,在导航栏中选择“管理>代理”。 在 “操作 ”窗格中,选择“ 安装”。
- 在“选择代理部署方法”页上,选择“下一步”,在受信任的域>上附加代理>计算机。 保护代理安装向导将打开。
- 在“选择计算机”页上,DPM 显示可用计算机的列表。 从“计算机名称”列表>“添加”>>“下一步”中选择主 DPM 服务器的名称。
- 在 “输入凭据 ”页上,键入作为主 DPM 服务器上的本地管理员组成员的域帐户的用户名和密码。
- 在 “摘要 ”页上,选择“ 附加”。
将主 DPM 服务器添加到现有保护组,或创建新的保护组。 选择以保护以下数据源:
为主服务器配置的 SQL Server 数据库。
主 DPM 服务器上的所有卷(共享不会单独显示)。
主 DPM 服务器上的所有副本。
你至少应选择数据库、\Program Files\Microsoft System Center\DPM\DPM\Config folder, and the \Program Files\Microsoft System Center\DPM\Scripting 文件夹。
注意
不能从副本的保护中排除文件名。 此外,所有 DPM 服务器都必须运行相同的版本、更新等。设置同步时,建议每隔 24 小时同步一次。
设置 DPM 链接
在考虑链接之前,请记住以下限制:
每个 DPM 服务器只能在链中保护一次,因此请验证它们是否不受多个服务器的保护。
主服务器和辅助服务器由链建立。 例如,如果服务器 DPM3 实际上是保护服务器 DPM1,因为它充当 DPM2 的辅助服务器,则它不能直接充当 DPM1 的辅助服务器。
如果 DPM 服务器配置为保护其自己的数据源,链将中断。 例如,如果 DPM1 保护其自己的数据库或系统状态,则 DPM2 无法保护 DPM1。
在保护主 DPM 服务器的数据库之前,需要在主服务器上启动 SQL Server VSS 编写器服务。
链接示例 1
方案 1:链接保护
方案 1 显示一个链接了四台 DPM 服务器的方案:
Server | 保护 | 保护者 |
---|---|---|
DS1(主服务器) | PS1、PS2 | DS3 |
DS2(主服务器) | PS3、PS4 | DS3 |
DS3(辅助服务器) | DS1、DS2 | DS4 |
DS4(辅助服务器) | DS3 | - |
链接示例 2
方案 2:链接保护
方案 2 显示一个链接了四台 DPM 服务器的方案:
Server | 保护 | 保护者 |
---|---|---|
DS1(主服务器) | PS1、PS2 | DS2 |
DS2(主服务器) | PS3 | DS3 |
DS2(辅助服务器) | DS1 | DS3 |
DS3(主服务器) | PS4 | DS4 |
DS3(辅助服务器) | DS2 | DS4 |
DS4 | DS3 | - |
Cyclic protection
如果不想使用辅助服务器,则两个 DPM 服务器可以相互保护。
方案 3:循环保护
方案 3 显示了使用循环保护的方案。
Server | 保护 | 保护者 |
---|---|---|
DS1(主服务器) | PS1、PS2 | DS2 |
DS2(主服务器) | PS3 | DS3 |
DS2(辅助服务器) | DS1、DS3 | DS3 |
DS3(主服务器) | PS4 | DS2 |
DS3(辅助服务器) | DS2 | DS2 |
配置链接
按如下所示设置链接:
在要保护的 DPM 服务器上安装 DPM 保护代理,使其免受要保护的 DPM 服务器。
为要保护的 DPM 服务器保护的数据源配置辅助保护。
注意
在 DPM 控制台中,无法为代理已保护的数据源配置保护。 这样可以避免重复保护数据。
- 例如,如果有 DPM1 和 DPM2,则需将 DPM 保护代理从 DPM1 安装到 DPM2,反之亦然。 然后在 DPM2 上为 DPM1 保护的服务器配置辅助保护,并为 DPM2 保护的服务器在 DPM1 上配置辅助保护。
恢复服务器
如果主服务器失败,可以将保护切换到辅助服务器。 切换后,可以从辅助服务器执行恢复功能。
将保护切换到辅助服务器
请使用以下步骤:
- 在辅助 DPM 服务器上,在 DPM 管理员控制台的保护区域中,转到“保护”工作区,右键单击要为其切换保护的数据源。
- 从上下文菜单中选择“切换灾难保护” 。
- 运行一致性检查。
切换保护后,副本显示为不一致,直到检查运行。
示例:
注意
- 若要将保护切换回主服务器,请执行与上述相同的步骤。
- 还可以通过使用 Start –DPMSwitchProtection PowerShell cmdlet 将保护切换到辅助 DPM 服务器。
恢复主 DPM 服务器
恢复主 DPM 服务器时,需要为以前受主 DPM 服务器保护的计算机重新建立保护。
注意
- 无法为受主 DPM 服务器保护的数据源还原恢复点。
- 恢复数据库文件时,请确保主 DPM 服务器上的还原位置是安全的。
使用主 DPM 服务器重新建立保护
在受保护的计算机上,从命令提示符处运行命令 Setdpmserver.exe <主 DPM 服务器名称>。
打开 计算机管理 并执行以下操作:
- 选择“本地用户和组” 。 验证主服务器(采用域名/名称格式)是否为以下组的成员:
- Distributed COM Users
- DPMRADCOMTrustedMachines
- DPMRADmTrustedMachines
- 如果主服务器未在任何组中列出,请以域/名称格式手动添加服务器。
- 选择“本地用户和组” 。 验证主服务器(采用域名/名称格式)是否为以下组的成员:
如果完成上述步骤后保护失败,请执行以下操作:
- 在管理工具中,打开组件服务。 展开 “计算机”,展开 “我的计算机”,然后选择“ DCOM 配置”。
- 在结果窗格中,右键单击“DPM RA 服务” 。 选择“属性>安全性”。
- 在 “启动和激活权限 ”区域中,选择“ 编辑”。
- 如果列出了主服务器,则访问控制列表 (ACL) 条目可能不正确。 删除该条目,然后添加具有完全权限的主服务器。
- 如果未列出主服务器,请添加具有完全权限的主服务器。
备份 DPM 数据库
作为 DPM 备份策略的一部分,必须备份 DPM 数据库。 DPM 数据库命名为 DPMDB。 此数据库包含 DPM 配置以及有关 DPM 备份的数据。 如果发生灾难,可以使用数据库的最新备份来重新生成 DPM 服务器的大部分功能。 假设你可以还原数据库,则基于磁带的备份是可以访问的并且会保留所有保护组设置和备份计划。 如果 DPM 存储池磁盘不受中断影响,则基于磁盘的备份在重新生成后也可用。 可以使用不同的方法备份数据库。
数据库备份方法 | 优点 | 缺点 |
---|---|---|
备份到 Azure | 可在 DPM 中轻松地配置和监视。 备份数据库文件有多个位置。 云存储为灾难恢复提供了强大的解决方案。 数据库存储非常安全。 支持 120 个在线恢复点。 |
仅在 DPM 2012 SP1 或更高版本上可用。 需要 Azure 帐户和其他 DPM 配置。 Azure 存储会产生一些费用。 - 需要使用包含 Azure 代理的基于 Windows Server 的受支持版本才能访问存储在 Azure 备份保管库中的 DPM 备份。 这不能是另一台 DPM 服务器。 如果数据库托管在本地,并且想要启用辅助保护,则不是选项。 一种解决方法是使用远程 SQL Server 来托管数据库。 这需要一些额外的准备和恢复时间。 |
通过备份 DPM 存储池来备份数据库 | 易于配置和监视。 备份保存在 DPM 存储池磁盘中,易于在本地访问。 DPM 计划的备份支持 512 个快速完整备份。 如果每小时备份一次,则会有 21 天的完整保护。 |
对于灾难恢复而言不是一个好的选择。 如果 DPM 服务器或存储池磁盘发生故障,则联机恢复可能无法按预期工作。 如果数据库托管在本地,并且想要启用辅助保护,则不是选项。 一种解决方法是使用远程 SQL Server 来托管数据库。 如果 DPM 服务或控制台未运行或工作,则需要执行一些准备和特殊步骤才能访问恢复点。 |
备份到辅助 DPM 服务器 | 可在 DPM 中轻松地配置和监视。 DPM 计划的备份支持 512 个快速完整备份。 如果每小时完成一次,则提供 21 天的短期保护。 如果每 30 分钟进行备份,将提供 10 天的保护。 备份保存在本地可访问的辅助 DPM 服务器存储池磁盘上。 如果辅助 DPM 服务器位于场外,则可为灾难恢复提供一个良好的解决方案。 |
需要其他 DPM 服务器和存储。 这两个 DPM 服务器必须运行相同的 DPM 版本和更新汇总。 |
备份到磁带 | 可在 DPM 中轻松地配置和监视。 DPM 计划的磁带备份支持长达 99 年的保留期。 可以在场外为灾难恢复执行磁带备份。 可以从连接了使用相同磁带媒体类型的磁带驱动器/库的所有其他 DPM 服务器中还原磁带备份。 可以对磁带进行加密,以确保安全存储。 |
如果数据库托管在本地,并且想要启用辅助保护,则不是选项。 一种解决方法是使用远程 SQL Server 来托管数据库。 每天只可以计划一个磁带备份。 你需要一个含有磁带库的活动 DPM 服务器,以便读取包含要还原的数据库副本的 DPM 备份磁带。 需要执行一些准备和特殊步骤才能访问基于磁带的恢复点。 |
通过本机 SQL Server 备份,备份到本地磁盘 | 内置到 SQL Server。 备份保存在易于访问的本地磁盘上。 可以计划为按需要的频率运行。 与 DPM 完全无关。 你可以计划一个备份文件清理。 |
除非备份已复制到远程位置,否则对于灾难恢复而言不是一个好的选择。 备份需要使用本地存储空间,这可能会限制保留期和频率。 |
使用本机 SQL 备份和 DPM 保护备份到受 DPM 保护的共享 | 可在 DPM 中轻松地监视。 备份数据库文件有多个位置。 易于通过网络从任意 Windows 计算机进行访问。 可能是最快的恢复方法。 |
仅支持 64 个恢复点。 对于站点灾难恢复而言不是一个好的选择。 DPM 服务器或 DPM 存储池磁盘故障可能会妨碍恢复工作。 如果 DPM DB 在本地托管且你要启用辅助保护,则不可使用此方法。 一种解决方法是使用远程 SQL Server 来托管 DPMDB。 需要一些额外的准备工作以对其进行配置和测试。 如果 DPM 服务器本身关闭,但 DPM 存储池磁盘可正常使用,则需要一些额外的准备和恢复时间。 |
数据库备份方法 | 优点 | 缺点 |
---|---|---|
备份到 Azure | 可在 DPM 中轻松地配置和监视。 备份数据库文件有多个位置。 云存储为灾难恢复提供了强大的解决方案。 数据库存储非常安全。 支持 120 个在线恢复点。 |
仅在 DPM 2012 SP1 或更高版本上可用。 需要 Azure 帐户和其他 DPM 配置。 Azure 存储会产生一些费用。 - 需要使用 Azure 代理支持的基于 Windows Server 的系统版本才能访问存储在 Azure 备份保管库中的 DPM 备份。 这不能是另一台 DPM 服务器。 如果数据库托管在本地,并且想要启用辅助保护,则不是选项。 一种解决方法是使用远程 SQL Server 来托管数据库。 这需要一些额外的准备和恢复时间。 |
通过备份 DPM 存储池来备份数据库 | 易于配置和监视。 备份保存在 DPM 存储池磁盘中,易于在本地访问。 DPM 计划的备份支持 512 个快速完整备份。 如果每小时备份一次,则会有 21 天的完整保护。 |
对于灾难恢复而言不是一个好的选择。 如果 DPM 服务器或存储池磁盘发生故障,则联机恢复可能无法按预期工作。 如果数据库托管在本地,并且想要启用辅助保护,则不是选项。 一种解决方法是使用远程 SQL Server 来托管数据库。 如果 DPM 服务或控制台未运行或工作,则需要执行一些准备和特殊步骤才能访问恢复点。 |
备份到辅助 DPM 服务器 | 可在 DPM 中轻松地配置和监视。 DPM 计划的备份支持 512 个快速完整备份。 如果每小时完成一次,则提供 21 天的短期保护。 如果每 30 分钟进行备份,将提供 10 天的保护。 备份保存在本地可访问的辅助 DPM 服务器存储池磁盘上。 如果辅助 DPM 服务器位于场外,则可为灾难恢复提供一个良好的解决方案。 |
需要其他 DPM 服务器和存储。 这两个 DPM 服务器必须运行相同的 DPM 版本和更新汇总。 |
备份到磁带 | 可在 DPM 中轻松地配置和监视。 DPM 计划的磁带备份支持长达 99 年的保留期。 可以在场外为灾难恢复执行磁带备份。 可以从连接了使用相同磁带媒体类型的磁带驱动器/库的所有其他 DPM 服务器中还原磁带备份。 可以对磁带进行加密,以确保安全存储。 |
如果数据库托管在本地,并且想要启用辅助保护,则不是选项。 一种解决方法是使用远程 SQL Server 来托管数据库。 每天只可以计划一个磁带备份。 你需要一个含有磁带库的活动 DPM 服务器,以便读取包含要还原的数据库副本的 DPM 备份磁带。 需要执行一些准备和特殊步骤才能访问基于磁带的恢复点。 |
通过本机 SQL Server 备份,备份到本地磁盘 | 内置到 SQL Server。 备份保存在易于访问的本地磁盘上。 可以计划为按需要的频率运行。 与 DPM 完全无关。 你可以计划一个备份文件清理。 |
除非备份已复制到远程位置,否则对于灾难恢复而言不是一个好的选择。 备份需要使用本地存储空间,这可能会限制保留期和频率。 |
使用本机 SQL 备份和 DPM 保护备份到受 DPM 保护的共享 | 可在 DPM 中轻松地监视。 备份数据库文件有多个位置。 易于通过网络从任意 Windows 计算机进行访问。 可能是最快的恢复方法。 |
仅支持 64 个恢复点。 对于站点灾难恢复而言不是一个好的选择。 DPM 服务器或 DPM 存储池磁盘故障可能会妨碍恢复工作。 如果 DPM 数据库托管在本地,并且想要启用辅助保护,则不是选项。 一种解决方法是使用远程 SQL Server 来托管 DPMDB。 需要一些额外的准备工作以对其进行配置和测试。 如果 DPM 服务器本身关闭,则需要一些额外的准备和恢复时间,但 DPM 存储池磁盘很好。 |
如果使用 DPM 保护组进行备份,建议对数据库使用唯一的保护组。
最佳做法是,如果要备份到磁带,请至少创建备份磁带的两个副本,并将每个备份磁带存储在不同的远程位置。 这添加了防止造成物理损坏或丢失备份磁带的保护措施。
如果 DPM SQL Server 实例未在 DPM 服务器上运行,请在 SQL Server 计算机上安装 DPM 保护代理,然后才能保护该服务器上的 DPM 数据库。
注意
出于还原目的,要使用 DPM 数据库还原的 DPM 安装必须与 DPM 数据库本身的版本匹配。 例如,如果要恢复的数据库来自安装更新汇总 4 的 DPM 2016,则 DPM 服务器必须运行与更新汇总 4 相同的版本。 这意味着在还原数据库之前,可能需要卸载并重新安装具有兼容版本的 DPM。 若要检查数据库版本,可能需要手动将其装载到临时数据库名称,然后针对数据库运行 SQL 查询,以基于主要版本和次要版本检查上次安装的汇总。
若要检查 DPM 数据库版本,请执行以下步骤:
若要运行查询,请打开 SQL Management Studio,然后连接到运行 DPM 数据库的 SQL 实例。
选择 DPM 数据库,然后启动一个新查询。
将以下 SQL 查询粘贴到查询窗格并运行:
按 MajorVersionNumber、MinorVersionNumber、BuildNumber、FileName FROM dbo.tbl_AM_AgentPatch 顺序选择不同的 MajorVersionNumber、MinorVersionNumber、BuildNumber
如果在查询结果中未返回任何内容,或者 DPM 服务器已从以前的版本升级,但自那时以来未安装新的更新汇总,则 DPM 的基本安装不会有一个条目,次要版本。 若要查看与更新汇总关联的 DPM 版本,请参阅 System Center Data Protection Manager(DPM)的内部版本号列表。
如果在查询结果中未返回任何内容,或者 DPM 服务器已从以前的版本升级,但自那时以来未安装新的更新汇总,则 DPM 的基本安装不会有一个条目,次要版本。 若要查看与更新汇总关联的 DPM 版本,请参阅 System Center Data Protection Manager(DPM)的内部版本号列表。
如果在查询结果中未返回任何内容,或者 DPM 服务器已从以前的版本升级,但自那时以来未安装新的更新汇总,则 DPM 的基本安装不会有一个条目,次要版本。 若要查看与更新汇总关联的 DPM 版本,请参阅 System Center Data Protection Manager(DPM)的内部版本号列表。
备份到 Azure
- 在开始之前,需要运行脚本来检索 DPM 副本卷装入点路径,以便知道哪个恢复点包含 DPM 备份。 初始复制后使用 Azure 备份执行此操作。 在脚本中,将 dplsqlservername% 替换为托管 DPM 数据库的 SQL Server 实例的名称。
Select ag.NetbiosName as ServerName,ds.DataSourceName,vol.MountPointPath
from tbl_IM_DataSource as ds
join tbl_PRM_LogicalReplica as lr on ds.DataSourceId=lr.DataSourceId
join tbl_AM_Server as ag on ds.ServerId=ag.ServerId
join tbl_SPM_Volume as vol on lr.PhysicalReplicaId=vol.VolumeSetID
and vol.Usage =1
and lr.Validity in (1,2)
where ds.datasourcename like '%dpmdb%'
and servername like '%dpmsqlservername%' --netbios name of server hosting DPMDB
Use DPMDB -- change to match the DPMDB name if different
select sv.AccessPath,sv.Server +'\' as Folder, lr.PhysicalReplicaId as "Replica" ,'\' as "\",lr.PhysicalReplicaId as "Relica-SubFolder"
from tbl_IM_DataSource as ds
join tbl_PRM_LogicalReplica as lr
on ds.DataSourceId=lr.DataSourceId
join tbl_AM_Server as ag
on ds.ServerId=ag.ServerId
join tbl_PRM_ReplicaVolume as rp
on lr.PhysicalReplicaId=rp.ReplicaId
join tbl_STM_Volume as sv
on rp.StorageId = sv.StorageId
where ds.datasourcename like '%dpmdb%'
and servername like '%dpmsqlservername%' --netbios name of server hosting DPMDB
请确保在安装 Azure 恢复服务代理时指定了密码,并且 DPM 服务器已在 Azure 备份 保管库中注册。 还原备份时需要此密码。
创建Azure 备份保管库,并下载Azure 备份代理安装文件和保管库凭据。 运行安装文件以在 DPM 服务器上安装代理,并使用保管库凭据在保管库中注册 DPM 服务器。 了解详细信息。
配置保管库后,设置包含 DPM 数据库的 DPM 保护组,并选择将其备份到磁盘和 Azure。
从 Azure 恢复 DPM 数据库
可以使用任何 DPM 服务器(必须至少运行 DPM 2012 R2 且更新汇总 7)从 Azure 恢复数据库,该更新汇总 7 已在Azure 备份保管库中注册,如下所示:
在 DPM 控制台中,选择“恢复>添加外部 DPM”。
提供保管库凭据(从 Azure 备份保管库下载)。
注意
凭据仅在两天内有效。
在 “选择外部 DPM 进行恢复”中,选择要为其恢复数据库的 DPM 服务器,键入加密通行短语,然后选择“ 确定”。
从可用点列表中选择要使用的恢复点。 选择“ 清除外部 DPM ”以返回到本地 DPM 视图。
将 DPM 数据库备份到 DPM 存储池
注意
此选项适用于具有新式备份存储的 DPM。
- 在 DPM 控制台中,选择“保护>创建保护”组。
- 在“选择保护组类型” 页上,选择“服务器” 。
- 在“选择组成员”页上,选择“DPM 数据库” 。 如果远程运行 SQL Server,请选择已安装的远程 SQL Server,然后选择 DPM 数据库。 如果 SQL Server 在 DPM 服务器上运行,请展开 DPM 服务器并选择 DPMDB。
- 在“选择数据保护方法” 页上,选择“我想使用磁盘进行短期保护” 。 指定短期保护策略选项。
- 在 DPM 数据库的初始复制后,运行以下 SQL 脚本:
select AG.NetbiosName, DS.DatasourceName, V.AccessPath, LR.PhysicalReplicaId from tbl_IM_DataSource DS
join tbl_PRM_LogicalReplica as LR
on DS.DataSourceId = LR.DataSourceId
join tbl_AM_Server as AG
on DS.ServerId=AG.ServerId
join tbl_PRM_ReplicaVolume RV
on RV.ReplicaId = LR.PhysicalReplicaId
join tbl_STM_Volume V
on RV.StorageId = V.StorageId
where datasourcename like N'%dpmdb%' and ds.ProtectedGroupId isn't null
and LR.Validity in (1,2)
and AG.ServerName like N'%<dpmsqlservername>%' -- <dpmsqlservername> is a placeholder, put netbios name of server hosting DPMDB
Use DPMDB -- change to match the DPMDB name if different
select sv.AccessPath,sv.Server +'\' as Folder, lr.PhysicalReplicaId as "Replica" ,'\' as "\",lr.PhysicalReplicaId as "Relica-SubFolder"
from tbl_IM_DataSource as ds
join tbl_PRM_LogicalReplica as lr
on ds.DataSourceId=lr.DataSourceId
join tbl_AM_Server as ag
on ds.ServerId=ag.ServerId
join tbl_PRM_ReplicaVolume as rp
on lr.PhysicalReplicaId=rp.ReplicaId
join tbl_STM_Volume as sv
on rp.StorageId = sv.StorageId
where ds.datasourcename like '%dpmdb%'
and servername like '%dpmsqlservername%' --netbios name of server hosting DPMDB
恢复 DPM 数据库
若要使用相同的数据库重新构造 DPM,首先需要恢复 DPM 数据库,并将其与全新安装的 DPM 同步。
使用以下步骤
- 打开管理命令提示符并运行 psexec.exe -s powershell.exe ,以在系统上下文中启动 PowerShell 窗口。
- 确定要从何处恢复数据库:
从上次备份复制数据库
- 导航到副本 VHD 路径 <DPMServer FQDN><PhysicalReplicaId><PhysicalReplicaId>
- 使用 mount-vhd disk0.vhdx 命令装载其中存在的 disk0.vhdx。
- 装载副本 VHD 后,请使用mountvol.exe通过 SQL 脚本输出中的物理副本 ID 将驱动器号分配给副本卷。 例如,mountvol X:?\Volume{}\
从以前的恢复点复制数据库
导航到 DPMDB 容器目录 <DPMServer FQDN><PhysicalReplicaId>;你将看到多个目录,其下具有一些唯一的 GUID 标识符,这些目录对应于 DPM DB 的恢复点。 物理恢复>点以外的<目录表示 PIT/恢复点。
导航到任何 PIT vhd 路径,即 <DPMServer FQDN><PhysicalReplicaId PITId>><,并使用 mount-vhd disk0.vhdx 命令装载其中存在的 disk0.vhdx。
装载副本 VHD 后,请使用 mountvol.exe 使用 SQL 脚本输出中的物理副本 ID 将驱动器号分配给副本卷。 例如,mountvol X:?\Volume{}\
上述步骤中角大括号中的所有以下文本都是占位符;用适当的值替换它们。
- ReFSVolume - SQL 脚本输出中的访问路径
- DPMServer FQDN - DPM 服务器的完全限定域名
- PhysicalReplicaId - SQL 脚本输出中的物理副本 ID
- PITId - 容器目录中物理副本 ID 以外的 GUID 标识符
打开另一个管理命令提示符并运行 psexec.exe -s cmd.exe ,以在系统上下文中启动命令提示符。
将目录更改为 X: 驱动器并导航到 DPM 数据库文件的位置。
将它们复制到易于从中还原的位置。 复制后退出 psexec cmd 窗口。
转到步骤 1 中打开的 psexec PowerShell 窗口,导航到 VHDX 路径,并使用命令 dismount-vhd disk0.vhdx 卸载 VHDX。
重新安装 DPM 服务器后,可以通过运行 DPMSYNC-RESTOREDB 命令,使用还原的 DPMDB 附加到 DPM 服务器。
运行 DPMSYNC-SYNC,DPMSYNC-RESTOREDB 完成后。
通过备份 DPM 存储池来备份数据库
注意
此选项适用于具有旧存储的 DPM。
在开始之前,需要运行脚本来检索 DPM 副本卷装入点路径,以便知道哪个恢复点包含 DPM 备份。 初始复制后使用 Azure 备份执行此操作。 在脚本中,将 dplsqlservername% 替换为托管 DPM 数据库的 SQL Server 实例的名称。
Select ag.NetbiosName as ServerName,ds.DataSourceName,vol.MountPointPath
from tbl_IM_DataSource as ds
join tbl_PRM_LogicalReplica as lr on ds.DataSourceId=lr.DataSourceId
join tbl_AM_Server as ag on ds.ServerId=ag.ServerId
join tbl_SPM_Volume as vol on lr.PhysicalReplicaId=vol.VolumeSetID
and vol.Usage =1
and lr.Validity in (1,2)
where ds.datasourcename like '%dpmdb%'
and servername like '%dpmsqlservername%' --netbios name of server hosting DPMDB
在 DPM 控制台中,选择“ 保护>创建保护”组
在“选择保护组类型” 页上,选择“服务器” 。
在“选择组成员” 页上,选择 DPM 数据库。 如果远程运行 SQL Server,请选择已安装的远程 SQL Server,然后选择 DPM 数据库。 如果 SQL Server 在 DPM 服务器上运行,请展开 DPM 服务器项并选择 DPMDB。
在“选择数据保护方法” 页上,选择“我想使用磁盘进行短期保护” 。 指定短期保护策略选项。 我们建议为 DPM 数据库使用两周的保持期。
恢复数据库
如果 DPM 服务器仍然正常运行,并且存储池保持不变(DPM 服务或控制台出现问题),请从副本卷或卷影副本复制数据库,如下所示:
确定想要开始恢复数据库的时间。
如果要从 DPM 副本卷中直接执行的最后一个备份复制数据库,请使用 mountvol.exe 使用 SQL 脚本输出中的 GUID 将驱动器号分配给副本卷。 例如:C:\Mountvol X: \\?\Volume{d7a4fd76-a0a8-11e2-8fd3-001c23cb7375}\
如果要从以前的恢复点(影子副本)复制数据库,则需要使用 SQL 脚本输出中的卷 GUID 列出副本的所有影子副本。 此命令会列出该卷的卷影副本:C:\>Vssadmin list shadows /for=\\?\Volume{d7a4fd76-a0a8-11e2-8fd3-001c23cb7375}\。 请记住创建时间和要从中恢复的卷影复制 ID。
然后使用diskshadow.exe将卷影副本装载到未使用的驱动器号 X:使用卷影复制 ID,以便可以复制数据库文件。
打开管理命令提示符并运行 psexec.exe -s cmd.exe ,在系统上下文中启动命令提示符,以便你有权导航到副本卷(X:)并复制文件。
CD 到 X:驱动器并导航到 DPM 数据库文件的位置。 将它们复制到易于从中还原的位置。 复制完成后,退出 psexec cmd 窗口,然后运行diskshadow.exe并取消打开 X: 卷。
将数据库备份到辅助服务器
在辅助 DPM 服务器上,将保护代理推送到安装了 DPM 数据库的服务器- 无论是在主 DPM 服务器上还是在远程 SQL Server 上。 安装后,服务器将显示在具有保护代理的“未受保护的服务器”中,刷新时应显示状态正常。
创建新保护组。 在 “选择组成员”中,选择托管 DPM 数据库的服务器。 在所有 SQL Server 中,选择要保护的数据库。 在“选择数据保护方法”页中,根据需要选择使用对磁盘和联机的短期保护。 在 “指定短期目标 ”页上,选择要将备份配置为短期存储的方式。 对于磁盘存储,每 30 分钟可以有 512 个快速完整备份。 完成该向导。 创建初始恢复点后,保护将启动
恢复数据库
如有必要,请重新生成主服务器作为 DPM 服务器。
若要还原数据库,请在辅助服务器上的 DPM 控制台中选择“恢复”并找到受保护的数据库。
为要恢复的恢复点选择日期。 将数据库恢复到原始位置。 恢复数据库后,运行 DPMSync 工具。
将数据库备份到磁带
需要知道包含 DPM 数据库副本的磁带的条形码或磁带标签。 执行此操作的最佳方法是在备份 DPM 数据库的同一天计划通过邮件发送状态报告。 报告将包括上次备份日期/时间、磁带标签和条形码,以便找到它进行恢复。 或者,可以使用此 SQL 脚本从当前数据库中提取信息,以便在发生灾难时将其单独存储。
Select Path,ro.FileSpec,media.Label,media.BarcodeValue,pd.CreationDate,
pd.ExpiryDate,pd.LifeStatus as "1=valid, 2=expired"
from dbo.tbl_MM_MediaMap mm
join dbo.tbl_MM_PhysicalDataset pd on pd.datasetid = mm.datasetid
join dbo.tbl_MM_Media media on media.MediaId = mm.MediaId
join dbo.tbl_RM_RecoverableObjectFileSpec ro on ro.DatasetId = mm.DatasetId
where ro.filespec like '%DPMDB%'
order by CreationDate desc
创建保护组,然后在 “选择组成员 ”页上,选择 SQL Server(如果 SQL Server 在本地运行,请在 DPM 服务器下选择 DPMDB)。
选择以使用磁带执行长期保护,并在“选择库和磁带详细信息”上 指定磁带详细信息。
恢复数据库
还原过程取决于可用的磁带硬件和执行基于磁带的备份的 DPM 服务器的当前状态。 如果无法从执行备份的 DPM 服务器还原磁带,则需要从具有相同类型磁带驱动器的另一台 DPM 服务器还原磁带,以便可以读取磁带。 如果唯一可用的磁带硬件是连接到出现故障的 DPM 服务器的磁带,你可能需要重建 DPM 服务器。
如果使用 DPM 磁带加密,则需要用于加密在备用 DPM 服务器上安装的磁带的相同证书。
恢复:
找到包含要还原的 DPM 数据库的版本/日期/时间的物理磁带。
在 DPM 控制台 ->“管理”->“库”中,将备份磁带插入磁带驱动器或库并执行详细清单。
注意
如果要从中还原的 DPM 服务器是不同的 DPM 服务器,或者它是原始服务器上 DPM 的新安装,磁带将显示为导入的(不是此 DPM 服务器创建的)。
根据需要重新编录导入的磁带。
在 “恢复 ”选项卡上,找到数据库数据源。 如果来自导入的磁带,恢复点将位于“外部 DPM 磁带” 下。
恢复数据库 (DPMDB) 文件。 可以选择“恢复到 SQL Server 的任何实例”或“复制到网络”文件夹。 从磁带还原文件后,使用 SQL Management Studio 或 DPMSYNC -RESTOREDB 继续执行恢复步骤。
通过本机 SQL Server 备份,备份到本地磁盘
可以将 DPM 数据库备份到具有本机 SQL Server 备份的本地磁盘,与 DPM 无关。
通过本机 SQL Server 备份,备份到受 DPM 保护的共享
此备份选项使用本机 SQL 将 DPM 数据库备份到共享,使用 DPM 保护共享,并使用 Windows VSS 以前的版本来简化还原。
准备工作
如果 DPM 数据库位于远程 SQL Server 上,请在该服务器上安装 DPM 代理。
在 SQL Server 上,在有足够可用空间的驱动器上创建一个文件夹,以保存备份的单个副本。 例如:C:\DPMBACKUP。
共享该文件夹。 例如,将 C:\DPMBACKUP 文件夹共享为 DPMBACKUP。
将以下 OSQL 命令复制并粘贴到记事本,并保存到名为 C:\DPMBACKUP\bkupdb.cmd 的文件。 确保没有.txt扩展。 修改 SQL_Instance_name 和 DPMDB_NAME,使实例名称和 DPM 服务器使用的 DPMDB 名称匹配。
OSQL -E -S localhost\SQL_INSTANCE_NAME -Q "BACKUP DATABASE DPMDB_NAME TO DISK='C:\DPMBACKUP\dpmdb.bak' WITH FORMAT"
通过记事本,打开位于 ...\DPM\Scripting 文件夹下的 ScriptingConfig.xml 文件。
在远程 SQL Server 上: C:\Program Files\Microsoft Data Protection Manager\DPM\Scripting
在 DPM 服务器上: C:\Program Files\Microsoft System Center\DPM\DPM\Scripting
修改“ScriptingConfig.xml”,并将“DataSourceName=”更改为包含 DPMDBBACKUP 文件夹/共享的驱动器号 。 将 PreBackupScript 条目更改为在步骤 5 中保存的 bkupdb.cmd 的完整路径和名称。
<?xml version="1.0" encoding="utf-8"?> <ScriptConfiguration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="https://schemas.microsoft.com/2003/dls/ScriptingConfig.xsd"> <DatasourceScriptConfig DataSourceName="C:"> <PreBackupScript>C:\DPMDBBACKUP\bkupdb.cmd</PreBackupScript> <TimeOut>120</TimeOut> </DatasourceScriptConfig> </ScriptConfiguration>
保存对“ScriptingConfig.xml”所做的更改。
使用 DPM 保护 C:\DPMBACKUP 文件夹或 \\sqlservername\DPMBACKUP 共享,并等待创建初始副本。 C:\DPMBACKUPfolder 中应存在一个dpmdb.bak,因为运行预备份脚本,后者又复制到 DPM 副本。
如果未启用自助服务恢复,则需要一些额外的步骤来共享副本上的 DPMBACKUP 文件夹:
在 DPM 控制台 >“保护”中,找到 DPMBACKUP 数据源并选择它。 在详细信息部分,选择指向副本路径的链接上的“单击可查看详细信息”,并将该路径复制到记事本中。 删除源路径,并保留目标路径。 路径应如下所示: C:\Program Files\Microsoft System Center\DPM\DPM\Volumes\Replica\File System\vol_c9aea05f-31e6-45e5-880c-92ce5fba0a58\454d81a0-0d9d-4e07-9617-d49e3f2aa5de\Full\DPMBACKUP。
使用共享名称 DPMSERVERNAME-DPMDB共享该路径。 你可以在管理命令提示符中使用以下 Net Share 命令。
Net Share DPMSERVERNAME-dpmdb="C:\Program Files\Microsoft System Center\DPM\DPM\Volumes\Replica\File System\vol_c9aea05f-31e6-45e5-880c-92ce5fba0a58\454d81a0-0d9d-4e07-9617-d49e3f2aa5de\Full\DPMBACKUP"
使用本机 SQL Server 配置 DPM 数据库备份
像其他任何 SQL Server 数据库一样,你可以使用 SQL Server 本机备份对 DPM 数据库进行备份。
恢复数据库
通过任何 Windows 计算机的资源管理器,连接到 \\DPMServer\DPMSERVERNAME-dpmdb 共享。
右键单击“dpmdb.bak”文件以查看属性。 在 “以前的版本 ”选项卡上,可以选择和复制所有备份。 还有最后一个备份仍位于 C:\DPMBACKUP 文件夹中,也易于访问。
如果需要将 SAN 附加的 DPM 存储池磁盘移到另一台服务器,以便能够从副本卷读取或重新安装 Windows 以读取本地附加的磁盘,则需要事先知道 DPM 副本卷装入点路径或卷 GUID,以便知道哪些卷保存数据库备份。 可以使用下面的 SQL 脚本在初始保护之后、需要还原之前随时提取该信息。 将“%dpmsqlservername%”替换为托管数据库的 SQL Server 的名称。
Select ag.NetbiosName as ServerName,ds.DataSourceName,vol.MountPointPath,vol.GuidName from tbl_IM_DataSource as ds join tbl_PRM_LogicalReplica as lr on ds.DataSourceId=lr.DataSourceId join tbl_AM_Server as ag on ds.ServerId=ag.ServerId join tbl_SPM_Volume as vol on lr.PhysicalReplicaId=vol.VolumeSetID and vol.Usage =1 and lr.Validity in (1,2) where ds.datasourcename like '%C:\%' -- volume drive letter for DPMBACKUP and servername like '%dpmsqlservername%' --netbios name of server hosting DPMDB
如果需要在移动 DPM 存储池磁盘或 DPM 服务器重建之后进行恢复:
你具有卷 GUID,因此该卷需要装入另一台 Windows 服务器,或者在 DPM 服务器重建后,通过使用 mountvol.exe,使用 SQL 脚本输出中的卷 GUID 将其分配给驱动器号:C:\Mountvol X: \\?\Volume{d7a4fd76-a0a8-11e2-8fd3-001c23cb7375}\。
通过驱动器号和表示文件夹结构的部分副本路径,在副本卷上重新共享 DPMBACKUP 文件夹。
net share SERVERNAME-DPMDB="X:\454d81a0-0d9d-4e07-9617-d49e3f2aa5de\Full\DPMBACKUP"
通过任何 Windows 计算机的资源管理器,连接到 \\SERVERNAME\DPMSERVERNAME-dpmdb 共享
右键单击 dpmdb.bak 文件,查看其属性。 在 “以前的版本 ”选项卡上,可以选择和复制所有备份。
DPM 灾难恢复管理:备份 DPM DB
使用同一 DB 重建 DPM 服务器的方法之一是将 DPM DB 备份到本地磁盘。
DPM 数据库包含 DPM 配置以及有关 DPM 备份的数据。 发生灾难时,可以使用数据库的最新备份来重新生成 DPM 服务器的功能。 如果 DPM 服务器崩溃或操作不正常,并且存储池仍包含备份完好无损,则可以使用相同的 DPM DB 重新配置 DPM 服务器。
请确保:
- DPM DB 已备份到本地磁盘。
- 存储池完好无损,可用。
注意
恢复期间 DPM 服务器的完全限定域名(FQDN)需要与原始 DPM 服务器相同。
备份 DPM 数据库
在 DPM 控制台中,选择“保护>创建保护”组。
在“选择保护组类型” 页上,选择“服务器” 。
在“选择组成员”页上,选择“DPM 数据库” 。 如果远程运行 SQL Server,请选择已安装的远程 SQL Server,然后选择 DPM 数据库。 如果 SQL Server 在 DPM 服务器上运行,请展开 DPM 服务器并选择 DPMDB。
在“选择数据保护方法” 页上,选择“我想使用磁盘进行短期保护” 。 指定短期保护策略选项。
在 DPM 数据库的初始复制后,运行以下 SQL 脚本:
select AG.NetbiosName, DS.DatasourceName, V.AccessPath, LR.PhysicalReplicaId from tbl_IM_DataSource DS join tbl_PRM_LogicalReplica as LR on DS.DataSourceId = LR.DataSourceId join tbl_AM_Server as AG on DS.ServerId=AG.ServerId join tbl_PRM_ReplicaVolume RV on RV.ReplicaId = LR.PhysicalReplicaId join tbl_STM_Volume V on RV.StorageId = V.StorageId where datasourcename like N'%dpmdb%' and ds.ProtectedGroupId is not null and LR.Validity in (1,2) and AG.ServerName like N'%<dpmsqlservername>%' -- <dpmsqlservername> is a placeholder, put netbios name of server hosting DPMDB
恢复 DPM 数据库
若要使用相同的数据库重新构造 DPM,首先需要恢复 DPM 数据库,并将其与全新安装的 DPM 同步。
请使用以下步骤:
- 打开管理命令提示符并运行 psexec.exe -s powershell.exe,以在系统上下文中启动 PowerShell 窗口。
- 确定要从何处恢复数据库:
从上次备份复制数据库
- 导航到副本 VHD 路径,即 <ReFSVolume><DPMServer FQDN><PhysicalReplicaId><PhysicalReplicaId>
- 使用 mount-vhd disk0.vhdx 装载其中存在的 disk0.vhdx
- 装载副本 VHD 后,请使用mountvol.exe通过 SQL 脚本输出中的物理副本 ID 将驱动器号分配给副本卷。 例如,mountvol X: \?\Volume{<PhysicalReplicaId>}\
从以前的恢复点复制数据库
导航到 DPMDB 容器目录, <即 ReFSVolume><DPMServer FQDN><PhysicalReplicaId>,你将看到多个目录,其下具有一些唯一 GUID 标识符,这些目录对应于 DPM DB 使用的恢复点。 物理恢复>点以外的<目录表示 PIT/恢复点。
导航到任何 PIT vhd 路径,即 <ReFSVolume><DPMServer FQDN><PhysicalReplicaId><PITId> ,并使用 mount-vhd disk0.vhdx 装载其中存在的 disk0.vhdx。
装载副本 VHD 后,请使用mountvol.exe通过 SQL 脚本输出中的物理副本 ID 将驱动器号分配给副本卷。 例如,mountvol X: \?\Volume{<PhysicalReplicaId>}\
上述步骤中角大括号中的所有以下文本都是占位符;用适当的值替换它们。
- ReFSVolume - SQL 脚本输出中的访问路径
- DPMServer FQDN - DPM 服务器的完全限定域名
- PhysicalReplicaId - SQL 脚本输出中的物理副本 ID
- PITId - 容器目录中物理副本 ID 以外的 GUID 标识符。
打开另一个管理命令提示符并运行 psexec.exe -s cmd.exe以在系统上下文中启动命令提示符。
将目录更改为 X: 驱动器并导航到 DPM 数据库文件的位置。
将它们复制到易于从中还原的位置。 复制后退出 psexec cmd 窗口。
转到步骤 1 中打开的 psexec PowerShell 窗口,导航到 VHDX 路径,并使用命令 dismount-vhd disk0.vhdx 卸载 VHDX。
重新安装 DPM 服务器后,可以通过运行 DPMSYNC-RESTOREDB,使用还原的 DPMDB 附加到 DPM 服务器。
完成 DPMSYNC-RESTOREDB 后运行 DPMSYNC-SYNC。
使用 DPMSync
DpmSync 是一种命令行工具,可用于将 DPM 数据库与存储池中的磁盘状态以及已安装的保护代理同步。 DpmSync 还原 DPM 数据库,将 DPM 数据库与存储池中的副本同步,还原报表数据库,并重新分配缺少的副本。
Parameters
参数 | 说明 |
---|---|
-RestoreDb | 从指定位置还原 DPM 数据库。 |
-Sync | 同步还原的数据库。 还原数据库后,必须运行“DpmSync-Sync”。 运行“DpmSync-Sync”之后,某些副本可能仍标记为缺失。 |
-DbLoc location | 标识 DPM 数据库备份的位置。 |
-InstanceName server\instance |
DPMDB 必须还原到的实例。 |
-ReallocateReplica | 重新分配所有缺少的副本卷而不进行同步。 |
-DataCopied | 指示已完成将数据加载到新分配的副本卷中。 这仅适用于客户端计算机。 |
示例 1: 若要从 DPM 服务器上的本地备份介质还原 DPM 数据库。
运行下面的命令:
DpmSync –RestoreDb -DbLoc G:\DPM\Backups\2005\November\DPMDB.bak
还原 DPM 数据库后,若要同步数据库,请运行以下命令:
DpmSync -Sync
在还原和同步 DPM 数据库以及还原副本之前,运行以下命令以重新分配副本的磁盘空间:
DpmSync -ReallocateReplica
示例 2: 从远程数据库还原 DPM 数据库。
在远程计算机上运行以下命令:
DpmSync –RestoreDb -DbLoc G:\DPM\Backups\2005\November\DPMDB.bak –InstanceName contoso\ms$dpm
还原 DPM 数据库后,若要同步数据库,请在 DPM 服务器上运行以下命令:
DpmSync -Sync
在还原和同步 DPM 数据库以及还原副本之前,请在 DPM 服务器上运行以下命令以重新分配副本的磁盘空间:
DpmSync -ReallocateReplica