DPM 2012R2。Windows Server 2012R2 上的 Hyper-V 故障转移群集与 CSV 配合使用。Guest 也是带有 SQL Server 2014 的 Windows Server 2012R2。所有最新更新、更新汇总、累积更新和一些推荐的修补程序。
故事:虚拟机客户机中安装的每个 SQL 都有自己的维护计划,其中包括完整、差异和日志数据库备份到网络共享。现在,我正在借助 DPM 为虚拟机添加保护。
发生的情况:每次 DPM 备份虚拟机时,它都会使用 VSS,VSS 会触发 SQL VSS Writer,然后后者会依次在 SQL 中执行备份。
缺点:此 VSS 备份是数据库的完整备份,具有所有后果。因此,现在无法使用自己的 SQL 备份,因为无法从处于恢复状态的 VM VHDx 恢复 SQL 数据库以应用差异或日志备份。只有一种方法可以恢复 mdf/ndf/ldf 文件并附加它们或整个 VM。
正如 SQL VSS Writer 文档中所述,它不支持日志备份,因此没有时间点恢复,这对于生产数据库来说是不可接受的。(https://msdn.microsoft.com/en-us/library/ms175536.aspx)
我看到的唯一方法是将此备份设为仅复制。SQL VSS 编写器支持它。VSS 本身支持此参数 VSS_BACKUP_TYPE 到 VSS_BT_COPY
但我不知道如何告诉 DPM 这样做。
我到目前为止尝试过的:
虚拟机内部来宾操作系统
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SQLWriter\Settings\ . DWORD DisableLogShrink 1 . 仅在 SQL VSS 备份期间禁用日志收缩,但它仍然是完整备份。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Virtualization\VssRequestor\ . DWORD BackupType 1 . KB975354. 如果创建此注册表项并将其值设置为 1,则应用程序备份将不受运行 Hyper-V 的服务器上的虚拟机备份操作的影响。无影响。
在主机服务器上(集群中的所有节点均已重新启动)
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Data Protection Manager\Agent\HonorFilesNotToBackup\ 另外还有 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\BackupRestore\FilesNotToBackup\ MULTI_SZ 字符串,其中包含包含 SQL 数据库的 VHDX 路径。无效果。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Data Protection Manager\Agent\2.0\ . DWORD CopyBackupEnabled 1. (https://blogs.technet.microsoft.com/dpm/2015/05/20/an-in-depth-look-at-the-registry-settings-that-control-microsoft-dpm-2012/) 没有效果。
在 DPM 服务器上
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft 数据保护 Manager\Agent\2.0\CopyBackups\
DPM 中虚拟机的 DWORD 名称,值为 1。
也许就是这样,我只是不知道如何正确写出 DPM 会接受的虚拟机名称。现在格式是 VMNAME.CLUSTERNAME.DOMAIN.COM 没有效果。
看来我的 google-bing-whatever 之旅就到此结束了。
这让我有几个问题。- 我如何才能使用 DPM 保护使用 SQL 的虚拟机,同时又能保留其中 SQL 数据库的时间点恢复功能?- 其他人如何使用 DPM 保护使用 SQL 的虚拟机?对整个虚拟机使用 15 分钟同步间隔?如果有数十甚至数百个虚拟机,那么空间/负载/流量等会很大
主要问题是: - 有人能够实现 DPM 在相同设置下不影响 Hyper-V VM 内的 SQL 备份吗?
答案1
您可以通过禁用 SQL 服务器的“SQL Server VSS 编写器”服务来停止使用 SQL VSS 编写器。
答案2
好吧。我终于做到了。
对我真正有用的是:
在主机服务器上
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Data Protection Manager\Agent\2.0
DWORD CopyBackupEnabled 1
这确实使 VSS 备份仅复制,但它们仍然记录在备份历史记录中(不知何故我没想到这一点并忽略了它实际上有效)。
其次,在客户操作系统 WS2012R2 中,默认情况下日志不会被截断,但相反,在 2008R2 中,默认情况下日志会被截断。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Virtualization\VssRequestor DWORD BackupType 1
对 SQL 没有影响,但 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SQLWriter\Settings\ DWORD DisableLogShrink 1
有帮助
通过 fn_dblog() 或日志大小检查日志截断。
此外,
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Data Protection Manager\Agent\HonorFilesNotToBackup
Plus
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\BackupRestore\FilesNotToBackup
MULTI_SZ 字符串与 VHDX 路径的
工作方式不符合预期。
使用这些键时,VHDX 文件仍受 VSS 影响,但它们被排除在生成的备份之外。因此,如果使用这些键,请注意,即使排除了带有 DB 的 VHDX(或者仅排除了数据库文件),SQL 也会记录此备份,并且可能会截断日志。
最后,DPM 服务器密钥
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Data Protection Manager\Agent\2.0\CopyBackups
DWORD 数据源名称
不影响 VM 备份,并且看起来 SharePoint 配置数据库是此密钥的唯一目标