Firebird где хранятся базы
Перейти к содержимому

Firebird где хранятся базы

  • автор:

Firebird где хранятся базы

Этот раздел описывает различия при установке серверов баз данных.

Для пользователей, ранее использовавших СУБД MS SQL и являющихся новичками в использовании СУБД Firebird , вероятно, простота установки СУБД Firebird будет некоторым приятным сюрпризом. Процесс установки не представляет никаких проблем, Вы можете устанавливать соединение с базой данных сразу после установки СУБД Firebird . Обратите внимание, что по умолчанию именем администратора СУБД Firebird является SYSDBA , и пароль masterkey (пароль при установке в ОС Linux генерируется произвольный или запрашивается у пользователя при установке — прим. перев.); в СУБД MS SQL соответственно sa и пустой пароль.

Заметьте, что Вам не нужно осуществлять выбор используемого набора символов и способ их сортировки при установке СУБД Firebird . В СУБД MS SQL Вы не только должны указать эту информацию при установке, но и, в случае необходимости изменения, Вам необходимо будет переустановить СУБД и указать новые параметры. В дополнение к этому, другие программные пакеты, такие как Microsoft Commerce Server , могут отказываться работать с СУБД MS SQL, если Вы выберите неверные значения параметров.

В отличие от СУБД MS SQL 6.5, СУБД Firebird не имеет понятия « утройства » (devices). Все данные хранятся в обычных файлах доступной файловой системы. Имейте в виду, что Вы не сможете использовать « чистые » разделы диска (raw disk partition, разделы без файловой системы) для хранения Ваших баз данных.

Важное замечание : СУБД MS SQL использует механизм журналирования (логи, logs) для сохранения целостности баз данных, в том числе при непредвиденных сбоях. СУБД Firebird использует многоверсионную архитектуру (multi-generation architect, MGA) для создания копии (версии) записи « на месте », если это необходимо (например, при модификации); но запись новой версии записи на диск может быть отложена, что может дать некоторый выигрыш в скорости работы СУБД. Для каждой базы данных Вы можете установить атрибут Forced Writes (принудительная запись) — рекомендуется устанавливать этот атрибут, чтобы быть уверенным в целостности базы данных в различных чрезвычайных ситуациях, таких как исчезновение питания и т.п. В случае уверенности в конфигурации оборудования, Вы можете не устанавливать этот атрибут (например, для выделенного сервера Linux , наличии источников бесперебойного питания и т.д.).

Firebird Documentation Index → Переход с MS SQL на Firebird → Установка сервера

Firebird где хранятся базы

СУБД MS SQL 6.5 использует устройства (devices), которые могут представлять собой файлы или « чистые » разделы (raw partitions, разделы без файловой системы), чтобы работать с данными. Это ведет к сложным для поддержки системам. СУБД MS SQL 7 и MS SQL 2000 используют обычные файлы вместо устройств. Для каждой базы данных создаются, как минимум, два файла: один, собственно, для хранения данных, и второй — для сохранения журнала выполненных транзакций.

СУБД Firebird не использует отдельный журнал для сохранения выполненных транзакций, и поэтому использует единственный файл для хранения всех данных.

Оператор CREATE DATABASE (« создать базу данных ») в СУБД Firebird проще, чем аналогичный оператор в СУБД MS SQL. Обратитесь к справочнику SQL для подробного описания всех возможностей.

Существенное различие в модели управления файлами — это использование СУБД групп файлов (filegroups) для деления базы данных на несколько наборов файлов по определенному принципу. СУБД Firebird так же может работать с разбитой на несколько файлов базой данных, но модель работы с файлами более проста (в смысле принципа, из которого производится разбиение на файлы — прим. перев.).

Дополнительная возможность, предоставляемая СУБД Firebird — это использование теневых файлов (shadow files). Теневые файлы являются немедленной копией исходной базы данных. Обычно они используются для быстрого получения актуальной копии. В СУБД MS SQL нет такой функции, хотя СУБД MS SQL 2000 имеет похожую функцию при использовании журналов, перемещенных между серверами, и репликации.

Администрирование пользователей

СУБД MS SQL 6.5 предоставляет два объекта для управления: « логины » и « пользователи ». « Логин » определяет комбинацию имени пользователя и пароля для досутпа к серверу базы данных; « пользователь » определяет права доступа для каждой базы данных. « Логины » отображаются на « пользователей » в базе данных.

В СУБД MS SQL 7 добавлен новый объект управления группами пользователей — « роли ». « Роль » является хранилищем прав. Некоторые « роли » являются предопределенными, например, « оператор создания копии базы данных » или « администратор базы данных ».

СУБД Firebird предоставляет похожую модель, но не включает в нее « логины ». Пользователи сообщают серверу свое имя, пароль и « роль », с правами которой они хотят работать. Существует одна общая база данных для всего сервера баз данных, в которой хранится информация обо всех пользователях сервера (их имена и пароли); информация о « ролях » и предоставленных каждому пользователю правах хранится в каждой конкретной базе данных. (Исходный документ имеет здесь неточность: там сказано, что в базе данных безопасности/пользователей хранится так же информация о « ролях » и разрешениях/запретах для каждого пользователя. Так же версия 2.0 СУБД Firebird вносит много изменений в модель управления пользователями. — прим. перев.)

В обоих СУБД считается хорошей практикой получать доступ к ресурсам через хранимые процедуры (stored procedures), и предоставлять доступ к данным только этим хранимым процедурам. (Это утверждение спорно и не может слепо применяться во всех случаях, по крайней мере, относительно СУБД Firebird . — прим. перев.)

Операции резервного копирования и восстановления

СУБД Firebird использует более простую модель создания резервных копий баз данных и восстановления из них по сравнению с СУБД MS SQL, хотя в качестве жертвы здесь принесена гибкость. Резервное копирование может выполняться с помощью консольных (из командной строки) и графических утилит, в любом случае производится резервное копирование всей базы данных. Операция восстановления также восстанавливает всю базу данных. Нет возможности создания резервной копии только изменений, произошедших с момента создания последней резервной копии, или восстановления изолированного набора транзакций. (В СУБД Firebird 2.0 появилась возможность создания инкрементных резервных копий. — прим. перев.)

Обратите внимание, что при создании резервной копии базы данных СУБД Firebird существует важный параметр, определяющий формат создаваемой резервной копии: платформозависимый или платформонезависимый (переносимый). Создание резервной копии в переносимом формате позволяет администратору базы данных создать ее резервную копию в одной операционной системе, а затем восстановить базу данных из этой копии в другой операционной системе. Обычно такая возможность используется, например, при разработке приложения на Windows , а затем переносе базы данных на более мощный сервер Linux . (Так же, это рекомендуемый способ переноса баз данных с одного компьютера на другой даже для одной операционной системы: простое копирование файла базы данных не рекомендуется. — прим. перев.)

Firebird Documentation Index → Переход с MS SQL на Firebird → Администрирование

Инструкция по переносу сервера Firebird

Данная инструкция предназначена для случая, когда на предприятии большое количество рабочих мест и файлы gedemin.exe находятся непосредственно на рабочих местах. Если gedemin.exe вызывается из общей папки и там же находится файл databases.ini, то конфигурирование службы WINS не имеет большого смысла.

Файл базы данных: d:\bases\database.fdb Старый сервер: old_server, ip address: 192.168.0.1 Версия Firebird: 2.5

Все клиенты подключаются по имени сервера и пути к базе данных. Строка подключения:

old_server:d:\bases\database.fdb

Надо перенести базу данных на новый сервер в локальной сети предприятия:

Новое расположение файла бд: f:\data\new_base.fdb Новый сервер: new_server, ip address: 192.168.0.23 Версия Firebird: 3.0

1. Подготовительный этап

  • На сервере контроллера домена открываем конфигурирование службы имен [WINS] и создаем алиас db_server с адресом 192.168.0.1 (это адрес существующего, старого сервера).
  • На старом сервере базы данных, в папке Firebird 2.5, создаем файл aliases.conf следующего содержания:
db = d:\bases\database.fdb
  • На рабочих местах меняем строку подключения к базе данных. Новая строка:
db_server:db

2. Установка сервера Firsbird 3

На новом компьютере устанавливаем сервер Firebird 3 и настраиваем его параметры.

3. Перенос файла базы данных

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

  1. Подключаемся из Гедымина под Администратором и отключаем всех пользователей.
  2. Чтобы пользователи не подключились в момент копирования файла базы данных, останавливаем службу Firebird 2.5.
  3. Копируем файл базы данных на новый сервер.
  4. На новом сервер воспользуемся переносимой локальной версией Гедымин: Разработчик (скачать можно по этой ссылке).
  5. Подключимся к скопированному файлу с помощью встроенного сервера. Для этого при указании пути к базе данных поле сервер не заполняем.
  6. Создадим бэкап базы данных.

4. Восстановление базы данных из архива

Восстанавливаем базу данных на новом сервере из файла бэкапа с помощью Firebird 3. Для этого можно воспользоваться локальной копией Гедымина из предыдущего шага, только теперь при указании пути к файлу бд пропишем имя сервера. Не забываем про количество страниц при распаковке файла базы данных!

5. Настройка databases.conf и службы WINS

  • В конфигурации WINS меняем для алиаса db_server адрес на 192.168.0.23
  • В папке сервера Firebird 3 создаем файла databases.conf и прописываем в нем:
db = f:\data\new_base.fdb

6. Обновление gedemin.exe

На рабочих местах или в общей папке, откуда запускается Гедымин в локальной сети, обновляем gedemin.exe и сопутствующие ему файлы. Всегда актуальный архив можно взять по этой ссылке.

Подключаемся и тщательно проверяем работоспособность кода.

  • Firebird
  • Школа системного администратора

Firebird где хранятся базы

Далее в таблице приводится принятое по умолчанию расположение компонентов на диске для Windows и Linux систем.

При основательной переработке кода, начатой в версии 1.5, были удалены жесткие привязки, используемые в InterBase®, а также переименованы многие компоненты. В результате Firebird 1.5 позволяет (потенциально) одновременно с собой присутствовать запущенному серверу InterBase®, обеспечивая возможность обоим серверами не слушать один и тот же порт TCP/IP. Если Вам необходима такая возможность, обратитесь к разделу Configuring the port service в Release Notes, прилагаемых к Firebird (см. директорию doc ).

Таблица 2. Компоненты Firebird 1.5 и их расположение

Расположение по умолчанию

32-bit and 64-bit Windows

(Windows 95, 98, ME, NT, 2000, XP, . )

Директория, в которую устанавливается пакет

(далее обозначается как )

fbserver.exe (SS) or fb_inet_server.exe (CS)

Утилиты командной строки

gbak.exe , gfix.exe , gstat.exe , etc.

Образец базы данных

Библиотеки пользовательских функций (UDF)

ib_udf.dll и fbudf.dll

(для поддержки старых приложений, опциально, присутствует gds32.dll )

(копия, опционально, располагается в системной директории Windows– см. замечание ниже)

Linux и, возможно, другие UNIX дистрибутивы

Директория, в которую устанавливается пакет

(далее обозначается как )

fbserver (SS) or fb_inet_server (CS)

Утилиты командной строки

gbak , gfix , gstat , etc.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *