Как отслеживать и регистрировать все команды вставки SQL - PullRequest
3 голосов
/ 17 февраля 2011

Я использую Oracle SQL Dev 2.1.1.64

Я работаю с приложением, которое использует базу данных Oracle для хранения.Есть ли способ в SQL Dev.отслеживать и регистрировать все команды вставки, которые «приходят» из веб-приложения в базу данных?Можете ли вы сказать мне, как это сделать?

Ответы [ 4 ]

4 голосов
/ 17 февраля 2011
audit insert table by <web-application-user> by access

должен помочь вам начать работу.

Обязательно установите параметры audit_trail и audit_file_dest так, как вам нужно.

После этого вы найдете операции либо вsys.aud$ или в каталоге, указанном audit_file_dest.

Существует также fine grained auditing, на который вы можете взглянуть, но из вашего вопроса использование мелкозернистого аудита (FGA) может показаться излишним.

1 голос
/ 17 февраля 2011

Вы можете запросить v $ SQL, но для этого вам понадобятся соответствующие GRANTS.

Для длительных сеансов вы также можете отслеживать прогресс, используя v $ session_longops

надеюсь, это вам поможет.

1 голос
/ 17 февраля 2011

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

В качестве альтернативы вы также можете использовать функцию Oracle AUDIT .Хотя для его реализации требуется немного знаний Oracle Database Administration ...

0 голосов
/ 17 февраля 2011

Создайте триггер, который записывает данные в таблицу журнала при каждом изменении данных в таблице (вставка, обновление, удаление).Перед удалением, после вставки, триггеры после обновления - это то, что вам нужно.

Он не будет специально регистрировать только веб-приложение, но если вы зарегистрируете пользователя, вносящего изменения, вы сможете отфильтровать его при просмотреданные.

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