【发布时间】:2011-08-22 05:51:22
【问题描述】:
SQL Server 2008 具有更改数据捕获功能,允许捕获对表所做的更改,例如插入、删除或更新行。
我注意到一个表被排除在变更数据捕获 (CDC) 之外,这带来了很多问题。
有没有办法查明表格何时从 CDC 中删除,甚至是谁删除了该表格?
是否有某种类型的 CDC 日志可以提供此类信息?
【问题讨论】:
标签: sql-server sql-server-2008 change-data-capture
SQL Server 2008 具有更改数据捕获功能,允许捕获对表所做的更改,例如插入、删除或更新行。
我注意到一个表被排除在变更数据捕获 (CDC) 之外,这带来了很多问题。
有没有办法查明表格何时从 CDC 中删除,甚至是谁删除了该表格?
是否有某种类型的 CDC 日志可以提供此类信息?
【问题讨论】:
标签: sql-server sql-server-2008 change-data-capture
您可以检查报告/标准报告/架构更改历史记录,我认为它会在那里被拾取,因为捕获表可能会被删除,但该数据来自默认跟踪,因此它可能不会追溯到很远够你吃的了。
【讨论】:
CDC 跟踪对受监控表所做的 DDL 更改: http://msdn.microsoft.com/en-us/library/bb522553(v=sql.110).aspx 和http://msdn.microsoft.com/en-us/library/bb510681(v=sql.110).aspx
select modify_date from sys.tables where object_id = object_id('dbo.yourtablename') 还会为您提供上次更改表的 DDL 的时间和日期。除非您对所有 DDL 更改安装了监控,否则 - 据我所知 - 无法获取对表定义所做的所有更改。
【讨论】: