Запрос для поиска всех операций DML, выполняемых всеми пользователями (разработчиками) на столе - PullRequest
0 голосов
/ 14 июня 2019

У меня есть таблица 'x'. Я хочу увидеть все предыдущие операции DML с именем пользователя (разработчика), например, кто обновил запись, кто вставил запись и кто удалил запись.

Ответы [ 2 ]

1 голос
/ 14 июня 2019

Это не просто запрос. Для этого необходимо настроить базу данных.

1) Проверьте настройки Audit_trail. В sqlplus выполнить show parameter audit
Если audi_trail = os, xml, данные аудита хранятся на уровне ОС в каталоге audit_file_dest
Если audi_trail = db, данные аудита сохраняются в DBA_AUDIT_TRAIL.

2) Проверьте, проверена ли ваша таблица.

select * from USER_OBJ_AUDIT_OPTS where object_name ='TABLE_NAME';

если таблица существует, запросите DBA_AUDIT_TRAIL или файлы os.

если не выполнить это AUDIT SELECT,INSERT,DELETE,UPDATE on TABLE_NAME;

и жди злоумышленников

1 голос
/ 14 июня 2019

У вас есть две опции

1) Создайте триггер на нужной таблице и запишите созданную вами таблицу аудита

2) Выполните аудит таблицы, которую вы хотите, для всех операций DMLПример: AUDIT (DML) ON TABLE;

параметры аудита doc

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...