Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
иобд 1-50.doc
Скачиваний:
6
Добавлен:
23.12.2018
Размер:
465.41 Кб
Скачать
  1. Журнализация изменений.

Позволяет восстанавливать самостоятельное состояние БД после аппаратных или программных сбоев.

При восстановлении после сбоев результат зафиксированных транзакций должен быть сохранён в восстановленной базе, а результаты незафиксированных транзакций не должны отразиться на итоговом состоянии базы.

Возможные ситуации:

  1. Индивидуальный откат транзакций.

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

  3. Восстановление системы (на основе журнала информации).

Варианты ведения журналов:

  1. Для каждой транзакции поддерживается свой журнал изменения БД.

  2. Поддерживается только общий журнал изменений (наиболее распространённый)

При организации работы журнала возникают проблемы, т.к. данные журнала тоже буферизуются. Для поддержания согласованности БД используется специальный протокол журнализации, обеспечивающий совместную буферизацию данных и журнала об изменении данных. Смысл протокола – запись в журнале об изменении объекта должна быть сохранена во внешней памяти раньше, чем будет сохранён сам сохранённый объект.

При индивидуальном откате транзакции все записи в журнале от неё связываются в обратный список, после чего для каждого оператора производится противоположная операция. При восстановлении после сильного сбоя (жёсткий сбой) когда, журнал изменений повреждён или утрачен, восстановлением является извлечение архивной копии БД.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]