11

在我更深入地研究 Microsoft 文档的深渊之前,我想知道是否有人对更改数据捕获和更改跟踪有经验,是否知道其中一个或两个是否可以用来代替传统的...

“由触发器插入的‘真实表’(原始表的所有字段,加上日期/时间、用户 ID 和 DML 操作字段)的审计跟踪表副本”

...设置数据库表审计跟踪,其中触发器填充审计跟踪表(这都是手动工作)。

MSDN 概述文档从高层次上解释了变更数据捕获和变更跟踪是什么,但对我来说还不够清楚,也没有直接说明这些工具可以用来替换我们的传统审计跟踪表。我经常做。

有任何使用变更数据捕获和变更跟踪经验的人可以为我节省大量时间,或者确认我正在花时间寻找正确的工具吗?我们审计跟踪的关键部分是捕获对表字段(在 INSERT、UPDATE、DELETE 上)的所有更改、发生时间以及执行者。这些更改通常通过审计跟踪报告按时间顺序提供给最终用户。另一个问题是......更改数据捕获或更改跟踪是解决方案,我假设可以像普通表中的数据一样查询这些数据?

编辑:无论时间长短,我都需要一个永久的审计跟踪。我看到变更数据捕获与事务日志有关,所以这对我来说听起来很有限。

4

1 回答 1

5

我认为您仍然需要在您的情况下使用审计表。在 BOL 中,似乎自动创建并安排了每天凌晨 2 点运行的清理作业。来自 BOL:

清理作业每天凌晨 2 点运行它保留更改表条目 4320 分钟或 3 天,使用单个删除语句最多删除 5000 个条目。

听起来它绝对不会做你想做的事。我不能认为这会做任何审计表的人想要的。除了它自己的五个默认字段(我找不到它们是什么)之外,将数据表中没有的任何字段添加到审计日志中似乎也很困难(如果不是不可能的话)。看起来数据不会对于查询或用于回滚特定的错误更改非常有用。或者也许我只是不理解这个过程,因为 BOL 在这个主题上写得非常糟糕,它当然没有回答我在用这个显然考虑不周的过程代替我的审计时会遇到的任何问题。

于 2010-04-21T17:19:34.190 回答