Чтобы узнать последний использованный объект базы данных?

Есть ли способ узнать, когда одна конкретная таблица / представление /M-представление используется в последний раз. т.е. когда один конкретный объект используется в любом операторе SELECT.

1 ответ

Вы можете использовать представления ALL_TAB_MODIFICATIONS, чтобы получить DML для таблицы.

Для объекта, недавно использовавшегося в Select Statement:- SQL> select count(*) из scott.emp;

COUNT(*)
----------
14

SQL> select sql_id,sql_text ,LAST_ACTIVE_TIME from v$sql where lower(sql_text) like '%scott.emp%' and  lower(sql_text) not in ('select sql_id,sql_text ,LAST_ACTIVE_TIME from v$sql%');

SQL_ID        SQL_TEXT                                         LAST_ACTIVE_TIME
------------- -------------------------------------------------------------------------------- -------
abj9tmfcs15bm select count(*) from scott.emp                               27-JUL-18

Лучший способ проверить это - создать отчет AWR за период времени, который вы хотите проверить, открыть его в браузере, нажать CTRL + F и выполнить поиск по имени таблицы. Если вы видите имя таблицы в поиске, то ваша таблица использовалась в течение этого периода.

Другие вопросы по тегам