2016-02-12 3 views
1

Я написал сценарий для резервного копирования и восстановления оракула с использованием RMAN. Примечание: я взял резервную базу данных + архивные журналыЧто происходит с транзакцией без транзакции в резервном копировании RMAN

Теперь я сделал несколько операторов sql в oracle, но не совершил транзакцию, тогда это может быть где-то в журналах повтора, я не уверен в этом.

Теперь, в ситуации выше, я взял резервную базу данных + архив и восстановил архив.

Не указано данных не было.

Я смущаюсь из-за этого сценария, правильно ли этот сценарий или отсутствуют мои данные или я где-то пропустил.

ответ

2

Это прекрасно. Фактически ваша транзакция выполняется повторно. Но так как вы не сделали этого, процесс восстановления вернул его после повторного использования, потому что он не смог найти инструкцию фиксации в конце потока повтора. Это по дизайну. Противоположным будет проблема, если вы сделали заявление, независимо от того, что произошло с сервером (потеря питания, сбой), вы сможете увидеть его после восстановления сервера и применения всех повторов/архивов.

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

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

+0

Спасибо, что это действительно helfull – Dipak

Смежные вопросы