SSISDB 事务日志备份

SSISDB Transaction Log Backup

我有几个 SSIS 包作业 运行,几个月前我的磁盘因为 SSISDB 数据库的大小而变满了。

我注意到 cleanup_server_retention_window 设置为 365 天,我将其更改为一天。 (这是一个开发服务器,此时我真的不关心历史)。

显然,(大)问题是现在事务日志增长得又快又快。

为了防止这种情况,我开始每周执行一次完整备份,每天执行一次事务日志备份,现在数据库的大小得到了控制。

然而,一些更有经验的人告诉我这不是解决这个问题的最佳方法,但我看不出有什么问题..

我想知道是否有更好的解决方案。

The (big) problem, obviously, is now that the transaction log grows a lot and fast.

你不会每天都看到这个。事务日志增长的原因正在改变 cleanup_server_retention_window ..当你将值从 365 更改为 1 时,它必须在内部进行大量删除

I start performing a full backup every week and a transaction log backup every day, and the size of the database is now controlled

我没有发现备份 SSISD.In 我们实例的问题,我们将恢复模式更改为简单并每天进行完整备份

我几乎尝试了所有方法,包括更改留存 window;它删除了事务但没有减少日志大小。对我来说,分配的日志文件大小增长到 75 GB。似乎没有任何帮助。

主要问题与恢复模型有关 设置为 'Full' 的 SSIS 数据库。将其设置为 'Simple' 并更改初始日志文件大小后,一切都已修复!

过去几天我一直在监视它,以确保一切正常,我觉得它很好,所以这个操作是安全的。

当前日志文件大小为 512KBMB,而不是 75GB!

我用 3 种方法解决了这个问题:

  1. 在 SSISDB 数据库上添加一些缺失的索引;它们应该在安装 CU4

  2. 后存在
  3. 将存储过程中的参数@delete_batch_size从1000改为25internal.cleanup_server_retention_window

  4. 将恢复模型从 Full 更改为 Simple

现在,当 运行 SSISDB 维护作业时,事务日志不再填满而无法修复,导致数据库 'crash' / 回滚