Чтение онлайн

на главную - закладки

Жанры

Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ

Борри Хелен

Шрифт:

Базы данных только для чтения

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

База данных Firebird может поставляться как файл только для чтения, при размещении каталогов, файлов и других, не относящихся к базе данных объектов, на ком- пакт-диски или другие файловые системы только для чтения. Конечно, к базам данных только для чтения могут также обращаться системы чтения/записи.

! ! !

ПРИМЕЧАНИЕ.

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

. ! .

Может потребоваться разработка приложения, которое не использует запросы, включающие запись в базу данных, или приложения, вызывающего исключение при попытках записи в базу данных. Следующие действия вызовут ошибку "Attempt to write to a read-only database" (Попытка записи в базу данных только для чтения):

* операции UPDATE, INSERT или DELETE;

* изменения метаданных;

* операции, которые пытаются увеличить генераторы.

Внешние файлы

Любые файлы, связанные с базой данных путем объявления

CREATE TABLE имя-таблицы EXTERNAL FILE 'имя-файла'

будут так же открываться, как файлы только для чтения, даже если для файла не установлен атрибут только для чтения.

Преобразование базы данных в режим только для чтения

Требуется исключительный доступ для переключения базы данных между режимами чтения/записи и только для чтения- см. разд. "Исключительный доступ" главы 39. Переключение режима может быть выполнено владельцем базы данных или пользователем SYSDBA.

Могут быть использованы утилиты gfix или gbak [37] :

* Используя gbak, выполните резервное копирование базы данных и восстановите ее в режиме только для чтения посредством опции -c[reate], например:

gbak -create -mode read_only dbl.fbk dbl.fdb

37

Сервис API предоставляет доступ к обоим методам для перевода базы данных в режим только для чтения. Чтобы получить информацию, изучите доступную документацию по различным группам параметров действий сервиса (isc_action_svc_xxx), которые могут передаваться в функцию isc_service_start О . Множество компонентов доступа к базе данных реализуют эти функции для использования в различных языковых средах.

* Используя gflx, выдайте команду-m[ode] read-only, например: gfix -mode read_only dbl. fdb

! ! !

СОВЕТ. Восстанавливайте базы данных только для чтения с полностраничным заполнением - используйте переключатель -use для указания "использовать полное пространство". В базе данных для чтения/записи страницы по умолчанию заполняются примерно на 80 процентов, поскольку это может помочь в оптимизации повторного использования страниц. Резервирование пространства не имеет смысла для базы данных только для чтения, а полностью заполненные страницы являются более компактными и более быстрыми.

. ! .

! ! !

СОВЕТ. Хотя сервер Firebird может управлять напрямую базами данных InterBase 5.x, эти базы данных не могут быть переведены в режим только для чтения. Вы можете обновить базу

данных InterBase 5 до базы данных только для чтения Firebird, сделав транспортабельную резервную копию в gbak InterBase 5 и восстановив с использованием gbak Firebird, с переключателями -c[reate] и -mode read_only.

. ! .

Теневые копии базы данных

Firebird имеет возможность немедленно восстанавливать базу данных в случае сбоя диска, сбоя сети, случайного удаления базы данных файловой системой [38] . Теневое копирование (shadowing, аналог зеркалирования) является внутренним процессом, который поддерживает физическую копию базы данных в реальном времени. Всякий раз, когда изменения записываются в базу данных, теневая копия одновременно получает те же самые изменения.

Активная теневая копия всегда отображает текущее состояние базы данных. При этом, хотя теневое копирование является очевидным преимуществом в качестве препятствия против аппаратных сбоев, оно не является системой онлайновой репликации.

38

К сожалению, теневое копирование не обеспечивает восстановление, если база данных была случайно удалена оператором DROP DATABASE. Когда вы удаляете таким образом базу данных, ее теневая копия (shadow) также удаляется.

Преимущества и ограничения теневого копирования

Основным преимуществом теневого копирования является то, что оно дает быстрый способ восстановления базы данных в случаях сбоев в аппаратном обеспечении. Активация теневой копии делает ее доступной немедленно. Теневое копирование выполняется незаметно для пользователей как дополнительный цикл в процессе записи данных с минимальным вниманием со стороны администратора базы данных.

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

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

Теневое копирование является методом восстановления "все или ничего". Оно не обеспечивает восстановления отдельных фрагментов или возврата к конкретной временной точке. Оно может существовать только в той же файловой системе, что и сервер; теневая копия должна находиться на фиксированных дисках, расположенных на сервере. Она не может записываться на совместно используемые, не относящиеся к локальной файловой системе или удаленные устройства.

! ! !

ПРИМЕЧАНИЕ. На системах, поддерживающих NFS (Networking File System), возможна поддержка теневых копий на файловой системе NFS. Причем это не рекомендуется, поскольку теневая копия станет изолированной - а следовательно, бесполезной - при потере соединения.

. ! .

Важные предостережения

Теневое копирование не является заменой резервного копирования. Не успокаивайте себя верой в то, что теневое копирование является способом замены регулярного резервного копирования и периодического восстановления базы данных.

Поделиться:
Популярные книги

Камень Книга седьмая

Минин Станислав
7. Камень
Фантастика:
фэнтези
боевая фантастика
6.22
рейтинг книги
Камень Книга седьмая

Я сделаю это сама

Кальк Салма
1. Магический XVIII век
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Я сделаю это сама

Кровь на эполетах

Дроздов Анатолий Федорович
3. Штуцер и тесак
Фантастика:
альтернативная история
7.60
рейтинг книги
Кровь на эполетах

Сыночек в награду. Подари мне любовь

Лесневская Вероника
1. Суровые отцы
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Сыночек в награду. Подари мне любовь

Кодекс Крови. Книга ХII

Борзых М.
12. РОС: Кодекс Крови
Фантастика:
боевая фантастика
попаданцы
5.00
рейтинг книги
Кодекс Крови. Книга ХII

Найди меня Шерхан

Тоцка Тала
3. Ямпольские-Демидовы
Любовные романы:
современные любовные романы
короткие любовные романы
7.70
рейтинг книги
Найди меня Шерхан

Идеальный мир для Лекаря 4

Сапфир Олег
4. Лекарь
Фантастика:
фэнтези
юмористическая фантастика
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 4

Релокант. По следам Ушедшего

Ascold Flow
3. Релокант в другой мир
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Релокант. По следам Ушедшего

Мир-о-творец

Ланцов Михаил Алексеевич
8. Помещик
Фантастика:
альтернативная история
5.00
рейтинг книги
Мир-о-творец

Протокол "Наследник"

Лисина Александра
1. Гибрид
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Протокол Наследник

Кодекс Охотника. Книга VII

Винокуров Юрий
7. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
4.75
рейтинг книги
Кодекс Охотника. Книга VII

Попаданка в семье драконов

Свадьбина Любовь
Попаданка в академии драконов
Любовные романы:
любовно-фантастические романы
7.37
рейтинг книги
Попаданка в семье драконов

Новые горизонты

Лисина Александра
5. Гибрид
Фантастика:
попаданцы
технофэнтези
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Новые горизонты

Скрываясь в тени

Мазуров Дмитрий
2. Теневой путь
Фантастика:
боевая фантастика
7.84
рейтинг книги
Скрываясь в тени