Технологии
баз данных |
ЛЕКЦИИ
Лекция на тему
АДМИНИСТРИРОВАНИЕ БАЗ ДАННЫХ
Разработчик: ст. преподаватель Черепица Л.С.
План лекции
1. Пользователи базы данных. Администратор базы данных, его функции
3. Восстановление базы данных
&
3. ВОССТАНОВЛЕНИЕ БАЗЫ ДАННЫХ
3.1. Резервное копирование базы данных
Поскольку данные, хранимые компьютерными средствами подвержены потерям и повреждениям, вызываемым разными событиями, важно обеспечить средства восстановления данных. Приведение базы данных точно в то состояние, которое существовало перед отказом не всегда возможно, но процедуры восстановления базы данных могут привести ее в состояние, существовавшее незадолго до отказа.
Восстановление базы данных применяется при повреждениях, не позволяющих пользователю открыть базу данных или работать с ней. Одной из причин повреждения базы данных может быть воздействие компьютерных вирусов или наличие дефектов (физических или логических) на диске.
Повреждение базы данных может проявляться при попытке пользователя открыть, сжать, зашифровать или дешифровать БД. При наличии повреждений базы данных, созданной в СУБД Access, для ее восстановления необходимо:
§ закрыть базу данных. При работе в сети необходимо убедиться, что другие пользователи закрыли базу данных;
§ создать резервную копию базы данных;
§ выполнить команду Сервис / Служебные данные / Восстановить;
§ указать имя папки и файла восстанавливаемой базы данных.
Следующим способом обслуживания базы данных является резервное копирование. Основным назначением резервного копирования базы данных является предотвращение потери информации и реализуется путем одноразового или периодического копирования и архивирования наиболее ценной информации. Резервное копирование заключается в создании резервной копии базы данных и размещении на вспомогательных носителях информации: жестких дисках, дискетах, накопителях на оптических дисках, магнитных лентах.
Резервная копия может быть точной копией исходной БД или сжатой (архивной) копией. Сжатие может осуществляться аппаратно или программно. Аппаратное сжатие предпочтительно с точки зрения временных затрат на эту операцию, но увеличивает стоимость аппаратной части.
Резервное копирование может осуществляться во время работы с БД (режим online) или в другое время. Копия может создаваться по инициативе оператора, либо автоматически в заданное время путем запуска соответствующей утилиты.
При организации резервного копирования администратор решает такие вопросы как:
§ какие устройства выбрать для резервного копирования;
§ когда и с какой частотой выполнять резервное копирование.
Важно периодически проверять корректность выполненного резервирования информации путем пробного восстановления.
Репликация (replication) – создание специальных копий (реплик) базы данных, с которыми пользователи могут работать одновременно на разных рабочих станциях.
3.2. Журнал транзакций. Восстановление через откат-накат
Реализация в СУБД принципа сохранения промежуточных состояний, подтверждения или отката транзакции обеспечивается специальным механизмом, для поддержки которого создается некоторая системная структура, называемая Журналом транзакций. Журнал транзакций содержит дополнительную информацию об изменениях базы данных и предназначен для обеспечения надежного хранения данных в базе данных.
Целью журнализации изменений баз данных является обеспечение возможности восстановления согласованного состояния базы данных после любого рода сбоев (аппаратных и программных). Основой поддержания целостного состояния базы данных является механизм транзакций.
Транзакция (transaction) – последовательность операций над базой данных, отслеживаемая системой управления базами данных от начала до завершения как единое целое.
Выделяют следующие типы транзакций:
§ плоские или классические (традиционные);
§ цепочечные;
§ вложенные.
Плоские или традиционные транзакции, характеризуются следующими свойствами:
§ атомарности (Atomicity) выражается в том, что транзакция должна быть выполнена в целом или не выполнена вовсе;
§ согласованности (Consistency), которое гарантирует, что по мере выполнения транзакций данные переходят из одного согласованного состояния в другое – транзакции не разрушает взаимной согласованности данных;
§ изолированности (Isolation) означает, что конкурирующие за доступ к базе данных транзакции физически обрабатываются последовательно, изолированно друг от друга, но для пользователей это выглядит так, как будто они выполняются параллельно;
§ долговечности (Durability) означает, что если транзакция завершена успешно, то те изменения данных, которые были ею, произведены, не могут быть ею потеряны ни при каких обстоятельствах.
Общими принципами восстановления являются следующие:
§ результаты зафиксированных транзакции должны быть сохранены в восстановленном состоянии базы данных;
§ результаты незафиксированных транзакции должны отсутствовать в восстановленном состоянии базы данных.
К ситуациям, при которых требуется восстановление базы данных, относятся:
§ индивидуальный откат транзакции (аварийное завершение работы и т.д.);
§ восстановление после внезапной потери содержимого оперативной памяти (аварийное выключение электропитания, неустранимый сбой процессора и т.д.);
§ восстановление после поломки основного внешнего носителя базы данных.
Во всех случаях основой восстановления является избыточное хранение данных. Эти избыточные данные хранятся в журнале, содержащем последовательность записей об изменении базы данных.
Возможны два основных варианта ведения журнальной информации:
§ отдельный локальный журнал, который поддерживается для каждой транзакции и используется для индивидуальных откатов транзакций;
§ общий журнал изменений базы данных, используемый для восстановления состояния базы данных после мягких и жестких сбоев.
Структура журнала условно может быть представлена в виде последовательного файла, в котором фиксируется каждое изменение базы данных. Каждая запись в журнале транзакций помечается номером транзакции, к которой она относится, и значениями атрибутов, которые она меняет.
Откат транзакции (возможность для незаконченных транзакций) выполняется следующим образом:
§ выбирается очередная запись из списка данной транзакции;
§ выполняется противоположная по смыслу операция, восстанавливающая предыдущее состояние объекта базы данных (вместо INSERT – DELETE, вместо DELETE – INSERT и вместо прямой операции UPDATE – обратная операция UPDATE);
§ любая из обратных операций также заносится в журнал;
§ при успешном завершении отката в журнал заносится запись о конце транзакции.
При восстановлении базы данных после мягкого сбоя в журнале отмечаются точки физической согласованности базы данных – моменты времени, в которые во внешней памяти содержатся согласованные результаты операций, завершившихся до соответствующего момента времени, и отсутствуют результаты операций, которые не завершились.
Основой восстановления базы данных после жесткого сбоя являются журнал и архивная копия базы данных. Восстановление начинается с обратного копирования базы данных из архивной копии. Затем для всех закончившихся транзакций по журналу в прямом направлении выполняются все операции, для транзакций, которые не закончились к моменту сбоя, выполняется откат.
©
Минск БГЭУ, |