Как узнать, когда таблица была удалена из Change Data Capture (CDC) или добавлена к ней?

#sql-server #sql-server-2008 #change-data-capture

#sql-сервер #sql-server-2008 #change-data-capture

Вопрос:

В SQL Server 2008 есть функция Change Data Capture, которая позволяет фиксировать изменения, внесенные в таблицу, такие как вставка, удаление или обновление строк.

Я заметил, что таблица была исключена из системы сбора данных изменений (CDC), что вызвало множество проблем.

Есть ли способ узнать, когда таблица была удалена из CDC или даже кто удалил таблицу?

Существует ли какой-то журнал CDC, где доступна такая информация?

Ответ №1:

Вы могли бы проверить отчеты / Стандартные отчеты / Историю изменений схемы, я думаю, это будет обнаружено там, поскольку таблицы захвата, вероятно, будут удалены, но эти данные поступают из трассировки по умолчанию, поэтому они могут не вернуться достаточно далеко для вас.

Ответ №2:

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, нет способа получить все изменения, внесенные в определения вашей таблицы.