Чтобы узнать последний использованный объект базы данных?
Есть ли способ узнать, когда одна конкретная таблица / представление /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 и выполнить поиск по имени таблицы. Если вы видите имя таблицы в поиске, то ваша таблица использовалась в течение этого периода.