SQL 数据库处于完全恢复模式下时如何启用日志截短
症状
数据库处于“完全”模式,且执行了完全数据库备份时,无法截短 SQL 截短日志。
解决方案
要解决此问题,请添加两个注册表值以使 Arcserve UDP 能够运行 BACKUP LOG 命令来备份事务日志。该命令将已写到数据库文件的空间标记为可重用。
按照以下步骤添加注册表值:
- 在代理计算机上使用以下命令打开注册表编辑器:
regedit
- 导航到以下注册表项,具体取决于是基于代理的备份还是无代理备份:
- 对于 32 位和 64 位操作系统的基于代理的备份,请在代理计算机上导航到以下注册表项:
- HKEY_LOCAL_MACHINE\SOFTWARE\Arcserve\Unified Data Protection\Engine\AFBackupDll
- 对于无代理备份,请导航到以下注册表项。在希望在代理服务器上备份的虚拟机中创建注册表值。如果没有此类注册表项,请创建完整的注册表项路径。
- 32 位操作系统:
- HKEY_LOCAL_MACHINE\SOFTWARE\Arcserve\Unified Data Protection\Engine\AFBackupDll
- 64 位操作系统:
- HKEY_LOCAL_MACHINE\SOFTWARE\WoW6432Node\Arcserve\Unified Data Protection\Engine\AFBackupDll
- 创建以下两个注册表值,并将它们的值都设置为 1:
- 名为 BackupSQLLog4Purge 的 dword 值
- 名为 ForceShrinkSQLLog 的 dword 值
- 此时便添加了该注册表值。
在下次清除作业发生时,该解决方案才生效。