Категории: ДомЗдоровьеЗоологияИнформатикаИскусствоИскусствоКомпьютерыКулинарияМаркетингМатематикаМедицинаМенеджментОбразованиеПедагогикаПитомцыПрограммированиеПроизводствоПромышленностьПсихологияРазноеРелигияСоциологияСпортСтатистикаТранспортФизикаФилософияФинансыХимияХоббиЭкологияЭкономикаЭлектроника |
Проверка целостности и восстановление БДВ процессе повседневной работы база данных может быть повреждена. К повреждениям могут привести события, описанные ниже. - Неправильное завершение пользовательского приложения. Данная причина не может привести к нарушению целостности БД. В случае сбоя приложения Interbase сохраняет данные подтвержденных транзакцией, выполняет откат данных незавершенных транзакций. Если InterBase успел выделить страницы данных для неподтвержденных записей, данные страницы будут рассматриваться как потерянные. Потерянная страница – это ни к кому не относящаяся страница, которая должна быть возвращена в список свободных страниц. - Ошибки записи ОС и аппаратного обеспечения. Обычно нарушают целостность БД. Ошибки записи могут привести к повреждению структур данных БД. Нарушение структур данных может сделать подтвержденные записи недоступными. Проверку целостности БД необходимо проводить в следующих случаях: - если операция резервного копирования/восстановления завершается с ошибкой; - если пользовательские приложения возвращают ошибку “corrupt database” (повреждение БД); - периодически, для отслеживания целостности; - после событий, которые могут привести к нарушению целостности. Проверка БД требует эксклюзивного доступа к БД. Если с БД работают пользователи, то InterBase вернет ошибку «OBJECT database_name IS IN USE». Для проверки целостности БД нужно вызвать диалоговое окно Database Validation, показанное на рисунке 4. Для этого надо щелкнуть на псевдониме отсоединенной БД в рабочей панели и выбрать Validation в контекстном меню.
Рисунок 4 – Диалоговое окно проверки целостности БД Для того чтобы начать процесс верификации, нужно выбрать параметры проверки и нажать на кнопку «ОК». Опции проверки целостности приведены в таблице 11. При проверке выдаются сообщения о поврежденных структурах данных, об ошибках в выделении страниц и потерянные страницы возвращаются в список свободных. Таблица 11 – Опции проверки целостности БД
Даже если удается успешно завершить процесс резервного копирования/восстановления БД с ошибками в контрольной сумме некоторых страниц, повреждение данных, которое повлекли ошибки, бывает трудно обнаружить. Поэтому иногда лучше произвести восстановление с ранней резервной копии и смириться с потерей последних данных. Если БД содержит ошибки, появляется следующее диалоговое окно:
Рисунок 5 – Диалоговое окно с результатами проверки Обнаруженные ошибки перечисляются в текстовом поле диалогового окна. Для того чтобы начать процесс восстановления, необходимо выбрать опции восстановления и нажать кнопку “Repair”. В процессе восстановления InterBase помечает поврежденные структуры. При последующем резервном копировании помеченные структуры будут пропущены. Некоторые ошибки невозможно исправить, например, повреждение стратегических структур (страницы выделения места и др.). Если предполагается, что БД имеет повреждения, необходимо предпринять следующие шаги: 1. Создать копию файла(ов) БД с помощью команд ОС. Нельзя создавать резервную копию средствами IBConcole или gbak, так как они не работают с поврежденными БД. 2. Выполнить процесс восстановления на копии БД для того, чтобы пометить поврежденные структуры. Если найдены блоки с неправильными контрольными суммами, запустите процесс восстановления заново, установив свойство Ignore Checksum Errors в True. Возможно, потребуется запуск процесса восстановления несколько раз для исправления всех ошибок. 3. Выполнить проверку БД еще раз, с установленной опцией Read Only Validation. Не должно быть сообщений об освобождении страниц, все поврежденные структуры должны быть помечены. 4. Выполнить резервное копирование БД. На этом этапе будут потеряны все данные, ранее помеченные как поврежденные. 5. Выполнить восстановление из полученной резервной копии. Результирующая БД не должна содержать ошибок. Порядок выполнения работы При выполнении работы используется БД к лабораторной работе № 1. 1. Ознакомиться с теоретическим материалом. 2. Выполнить резервное копирование БД на локальный сервер. 3. Выполнить операцию восстановления из резервной копии. 4. Повредить вручную файл резервной копии, заменив несколько байтов из файла резервной копии по случайному смещению. (Рекомендуется использовать текстовый редактор приложения типа FAR, VC и т.п.). 5. Произвести попытку восстановления из испорченного файла, описать получившиеся ошибки. Попытаться восстановить часть данных, манипулируя параметрами восстановления. 6. Выполнить проверку целостности БД. 7. Физически повредить файл БД. 8. Выполнить проверку целостности и попытаться восстановить данные. 4. Контрольные вопросы 1. Для чего используется резервное копирование и восстановление? 2. Какое расширение используется для резервных копий БД? 3. Опции резервного копирования и их назначение. 4. Опции восстановления и их назначение. 5. Какие пользователи могут выполнять резервное копирование? 6. Какие пользователи могут выполнять восстановление? 7. Для каких целей необходима проверка целостности? Опции проверки целостности и их назначение.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 1. Ковязин А.Н. Мир Interbase. Архитектура, администрирование и разработка приложений баз данных в Interbase Firebird Yaffil/ А.Н. Ковязин, С.М. Востриков.– Кудиц-Образ, 2006.– 496c.
2. Оптимизация и администрирование БД Microsoft SQL Server 2005: Учебный курс Microsoft/ Перевод. А.А. Исаковский.– BHV, 2007.– 624с. ПРИЛОЖЕНИЕ А Варианты заданий После номера варианта задания в скобках указан номер варианта из лабораторной работы № 4 по курсу ОБД за третий курс. Схему БД надо выбирать по номеру в скобках. В таблицах приведены группы пользователей, права группы пользователей и названия таблиц, на которые распространяются данные права. Если не указано другое, право на таблицу у пользователя – READ (только чтение). № 1 (2)
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-08-28 lectmania.ru. Все права принадлежат авторам данных материалов. В случае нарушения авторского права напишите нам сюда... |