Как проверить дату и время удаления представления ORACLE

#oracle11g

#oracle11g

Вопрос:

Где я могу узнать, в какое время представление было удалено из базы данных.

Для других типов объектов, таких как индексы и таблицы, я использую dba_recyclebin для проверки времени удаления, но для представления я не думаю, что ORACLE фиксирует детали в этой таблице.

Комментарии:

1. Ваш вопрос неясен. Вы хотите знать, было ли удалено представление? Тип select count(*) from [view_name] — если представление не существует, Oracle сообщит вам. Есть много других способов — вы можете запросить user_views или……

2. Я хотел проверить, в какой временной отметке было удалено представление. Поскольку оно не хранится в DBA_RECYCLEBIN , мне было интересно, есть ли какая-нибудь другая таблица, в которой хранится такая история. На данный момент кажется, что нет другого варианта, кроме поиска в архивных журналах.

3. Понятно, но, пожалуйста, перечитайте то, что вы написали (точные слова, а не то, что вы «хотели» сказать), и посмотрите, является ли это нормальной интерпретацией. Вы сказали, что у вас возникли проблемы с определением, было ли удалено представление; вы не сказали, что ЗНАЕТЕ, что оно было удалено, и вы просто хотите знать, когда. Спасибо за разъяснение!

4. Спасибо за ваши комментарии. Я обновил вопрос.

Ответ №1:

Предполагая, что удаление было достаточно недавним, чтобы данные все еще присутствовали в вашем UNDO табличном пространстве (вероятно, несколько часов, но до нескольких дней, в зависимости от вашей рабочей нагрузки и конфигурации), вы должны иметь возможность использовать запрос ретроспективного dba_views просмотра. У вас должна быть FLASHBACK ANY TABLE привилегия.

 SELECT text
  FROM dba_views AS OF TIMESTAMP( systimestamp - interval '1' hour )
 WHERE owner = <<owner of view>>
   AND view_name = <<name of view>>
  

Помимо этого, вы можете просмотреть свои архивные журналы, используя dbms_logmnr для поиска drop view инструкций в течение более длительного времени. Однако это, вероятно, потребует больше усилий.

Комментарии:

1. Спасибо за помощь. dbms_logmnr сделает свое дело. Мне было интересно, существует ли какая-либо эквивалентная таблица DBA_RECYCLEBIN.