Я пытаюсь создать каталог данных для своей компании. У нас есть огромное количество баз данных, разбросанных по разным экземплярам, которые выполняют разные функции для разных групп внутри компании. Собрать таблицы и определить, где они были расположены, было довольно просто, но моя цель — иметь возможность сказать, что поместило туда данные. Данные поступают в разные таблицы разными способами, например, через разные службы и пакеты SSIS, и я хотел бы найти способ каким-то образом собирать эту информацию в фоновом режиме.
Я просмотрел триггеры аудита входа в систему и идею расширенных событий, но не нашел решения.
Прямо сейчас я мог бы вручную просмотреть и собрать эти метаданные, но это заняло бы много времени, быстро устарело и стало бы бесполезным.
Надеюсь, ты не вызвался на это добровольно.
Расширенные события, вероятно, ваш лучший выбор. Используйте системные DMV, особенно два со ссылками/зависимостями, на которые ссылаются, чтобы увидеть, какие процедуры вставляются в какие таблицы. Затем используйте таблицу sql_modules, чтобы найти, какие триггеры/функции вставляются в какие таблицы, затем запустите XE примерно на год, запишите все операторы DML и посмотрите, какое приложение/клиент запускает процесс для вставки.
Спасибо! Я ценю ваш ответ и приложу все усилия. Я бы проголосовал за вас, но у меня нет доверия.