Страница 24 из 25 7.3. Восстановление при сбоях 7.3.1.1. SQL Server Автоматическое восстановление базы данных SQL Server включает в себя "воспроизведение" содержимого transaction logs. Этот процесс последовательно применяет к БД транзакции, сохраненные в transaction log для того чтобы восстановить состояние БД на момент последнего checkpint. Если база данных не восстанавливается из существующего transaction logI, следовательно ее надо удалить и восстановить из архива. При этом восстанавливается сначала полная копия БД, а затем все "частичные" архивы (incremental backups), которые были созданы от момента сохранения полной копии БД. Это достаточно сложный и длительный процесс. 7.3.1.2. InterBase Восстановление базы данных Borland InterBase происходит автоматически без вмешательства администратора БД. Транзакции, которые не успели завершиться на момент сбоя, будут полностью отменены, и БД останется в целостном состоянии. Недостатком является отсутствие "частичного" архивирования, т.е. если в результате сбоя был поврежден носитель данных, восстановить удастся только БД в ее последнем полном архивировании. Это компенсируется скоростю выполнения backup, его выполнением "на ходу", а также скоростью восстановления данных. Как уже упоминалось, при запуске Borland InterBase он проверяет БД на наличие неподтвержденных записей. При существовании таковых они переводятся в отмененное состояние. Этот процесс занимает несколько секунд. Такая особенность была ключевым фактором при выборе InterBase для американского танка M1 Abrams. Когда происходит выстрел из пушки танка, возникает весьма сильный электромагнитный импульс, который "перегружает" компьютер танка. После перезагрузки компьютера, InterBase мгновенно восстанавливает БД в целостное состояние и тут-же делает ее доступной для работы. Это свойство, не доступное в любой другой РСУБД, гарантирует доступность базы данных в жизненно важных ситуациях. Даже если потребуется восстановить БД из backup, это производится фактически одним нажатием кнопки в Server Manager, или запуском командного файла (вызывающего утилиту gbak), что может сделать даже неквалифицированный пользователь. Поскольку Borland InterBase является переносимым SQL-сервером, действия по восстановлению БД будут абсолютно идентичны для любой платформы. Восстановление БД может производиться между любыми операционными системами. Т.е. файл backup может располагаться например на Windows NT 3.51, а восстанавливаемая БД - на SCO UNIX. 7.3.1.3. Зеркалирование БД (Database Shadowing) Borland InterBase использует технику "горячего" резервирования при помощи так называемой "тени" (shadow). "Теневая" БД - дубликат базы данных, находящийся на другом физическом устройстве. Обновление "тени" производится с каждым обновлением страницы основной базы данных. В случае аппаратного сбоя носителя основной базы данных, Borland InterBase в зависимости от режима "затенения" переключает пользователей на "тень", делая ее основной базой данных. Это может происходить либо автоматически, либо по команде администратора базы данных. Таким образом, решается либо задача обеспечения непрерывного доступа к БД (online), либо гарантирование наличия целой копии рабочей базы данных. "Теней" базы данных может быть столько, сколько нужно для гарантии сохранности данных. |