Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры бд_2.doc
Скачиваний:
4
Добавлен:
14.09.2019
Размер:
145.41 Кб
Скачать

12. Восстановление данных после мягкого сбоя.

К числу основных проблем восстановления после мягк. сбоя относится то, что одна логическая операция изменения в БД может изменить несколько физических блоков БД. Например, страницу данных.

Страницы БД буферизуются в ОП и выталкиваются на физич. носитель БД, несмотря на применение протокола. Пиши сначала журнал (?!),после мягкого сбоя набор страниц ВП может оказаться несогласованным. Т.е. часть страниц ВП соответствует объекту до изменения , а др. часть после изменения.

Вводится понятие физической согласованности состояния ВП.

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

Точки физической согласованности.

К моменту мягкого сбоя возможны след. вар. транзакций:

Для Транзакции Т1(все делать нужно по журналу)

Никаких действий производить не требуется, т.к. она закончилась до момента tфс и все результаты отражаются во ВП БД.

Для транзакции Т2

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

Для транзакции Т3

Нужно выполнить в обратном направлении первую часть операции(undo) следовательно откатить ее во ВП БД. Полностью отсутствовавшие результаты операции Т3 которые были выполнены после момента tфс, с другой стороны во ВП, гарантирует присутствие операции Т3 которые были выполнены до момента tфс. Следовательно образованная интерпретация Т3 корректна и переведет к согласованному состоянию, целостность восстанавливается.

Поскольку Т3 не завершилась к моменту мягкого сбоя при восстановлении необходимо устранить все последствия ее выполнения.

Для транзакции Т4

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

ДЛЯ НАЧАВШЕЙСЯ после момента tфс и не успевшей завершиться к моменту мягкого сбоя.

Для транзакции Т5

Никаких действий предпринимать не требуется. Результат дл этой транзакции полностью отсутствует во ВП БД

13. Восстановление после жесткого сбоя(восстановление после поломки внешнего носителя бд)

Эта ситуация при достаточной высокой надежности современных устройств внешней памяти возникает сравнительно редко, но тем не менее СУБД должна иметь возможность восстановить БД и в таких ситуациях. Здесь основной восстановлением являются архивные копии и журнал изменений БД.

(то что дальше написано скорее всего не надо но пусть будет)

Во всех 3 случаях(жесткий и мягкий сбой и откат транзакции) основой восстановления является избыточное хранение данных.Эти избыточные данные хранятся в журнале.

2 основных варианта ведения журнала:

1. За каждой транцакцией поддерживается отдельный локальный журнал.Локальный журнал используется для индивидуальных откатов транзакции и может поддерживать в ОП.Но кроме того поддерж общий журнал изменений БД, используется для восстановления целостности и состояния БД после мягкого и жесткого сбоя. Этот подход позволяет бысто выполнить индинидуальный откат транзакции, но приводит к дублированию информации лок и общих журналов.

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