Восстановление данных при flashback запросе
Форум о СУБД Oracle, базы данных, запросы SQL. Обучение, курсы Oracle для чайников, начинающих и профессионалов
Конференция Oracle
; Логин:
  Пароль:
Обычный
Безопасный
Запомнить пользователя



Зарегистрироваться
Забыли пароль?
 
 
  




Объявление форума

Вы находитесь на сайте, на котором обсуждаются все вопросы, имеющие прямое или косвенное отношение к Системе управления базами данных Oracle. Мы постарались собрать в одном месте все необходимое для изучения данной темы: статьи, документацию по разным напрвлениям и, конечно же, лучший инструмент IT-специалиста - форум. Мы постараемся решить любой Ваш вопрос и надеемся, что Вы станете постоянным участником нашего сообщества.

Предлагаем Вам посетить отдельный раздел для новичков - клуб новичков - раздел, в котором смогут обмениваться опытом начинающие ораклоиды как насчет Oracle, так и насчет процесса обучения: что полезно почитать, где можно достать литературу, на какие курсы записаться. Удачного общения.



Форум о СУБД Oracle, базы данных, запросы SQL. Обучение, курсы Oracle для чайников, начинающих и профессионалов »   Администрирование Oracle »   Восстановление данных при flashback запросе RSS

Восстановление данных при flashback запросе

Восстановление данных при flashback запросе

Текущий рейтинг темы: Нет
Выводить сообщения

  Вперед>>Модератор: tyshenkoПечать
 
Сергей_КМ
Новичок


Всего сообщений: 1
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
7 мая 2017
Всем добрый день.
Задача восстановить ряд удаленных записей из нескольких таблиц базы на определенный момент времени (несколько часов назад) При попытке восстановить таблицу по технологии Flashback вот так:
FLASHBACK TABLE T1 TO TIMESTAMP to_date('05/05/2017 10:35:00','mm/dd/yyyy hh24:mi:ss');

для части таблиц восстановление проходит, а на некоторых возникает ошибка
"ORA-01555: snapshot too old: rollback segment number 11 with NAME "_SYSSMU195$" too small"

Вопросы
1. Означает ли ошибка "ORA-01555: snapshot too old: rollback segment number 11 with NAME "_SYSSMU195$" too small"
то, что данные уже не восстановить? Смущает то, что если пытаться восстановить данные на более древний момент времени, то
ошибка выдается другая, более понятная: "ORA-08180: no snapshot found based on specified time", по которой очевидно что таких данных уже нет.
Также смутило, что поискав в интернете информацию по этой теме наткнулся на статью "https://renaps.wordpress.com/2007/08/08/ora-01555-snapshot-too-old-when-using-flashback-query/" в которой пишут, что если поменять размеры файлов UNDO, то ошибка уйдет и данные можно восстановить. У меня такие изменения результата не принесли, или я недопонимаю насколько нужно увеличивать.

2. Если сделать запрос вида
SELECT * FROM T2 AS OF TIMESTAMP TO_TIMESTAMP ('2017-0505 10:35:00', 'YYYY-MM-DD HH24:MI:SS')
то выбирается какое то количество записей (в моем примере 1800300), а на следующей опять выдается ошибка ORA-01555.
А есть ли вероятность, что это ошибка выдается только при извлечении строки 1800300, а данные по следующим строкам более 1800300 есть. Можно ли их как то достать?


3. Также непонятно, почему при выполнении запроса
SELECT * FROM T2 AS OF TIMESTAMP TO_TIMESTAMP ('2017-0505 10:35:00', 'YYYY-MM-DD HH24:MI:SS') WHERE ROWNUM=10
ошибка ORA-01555 выдается, а если условие сделать так:
SELECT * FROM T2 AS OF TIMESTAMP TO_TIMESTAMP ('2017-0505 10:35:00', 'YYYY-MM-DD HH24:MI:SS') WHERE ROWNUM<11
то ошибка не выдается и выбираются 10 записей

Буду очень благодарен за помощь, подсказки, советы.
Другие варианты восстановления уже отпали, этот - последняя надежда.
  Вперед>>Модератор: tyshenkoПечать
Форум о СУБД Oracle, базы данных, запросы SQL. Обучение, курсы Oracle для чайников, начинающих и профессионалов »   Администрирование Oracle »   Восстановление данных при flashback запросе RSS


Время выполнения скрипта: 0.1044. Количество выполненных запросов: 17, время выполнения запросов 0.0316