Содержание

Firebird

Firebird (FirebirdSQL) — кроссплатформенная система управления базами данных (СУБД), работающая на Mac OS X, Linux, Microsoft Windows и разнообразных Unix платформах.

Firebird используется в различных промышленных системах (складские и хозяйственные, финансовый и государственный сектора) с 2001 г. Это коммерчески независимый проект C и C++ программистов, технических советников.

Среди недостатков: отсутствие кэша результатов запросов, полнотекстовых индексов, значительное падение производительности при росте внутренней фрагментации базы. Над решением этих проблем неустанно работает сообщество.

http://www.firebirdsql.org/

Инструмент для проектирования БД: IBExpert

Архитектуры сервера

Существует четыре различных взаимозаменяемых архитектуры сервера:

Установка

apt-get install firebird2.5-super
apt install firebird3.0-server

Запуск

service firebird2.5-super start
service firebird start

Настройка

По умолчанию сервер использует TCP порт 3050.

/etc/firebird/2.5/firebird.conf

Пароль SYSDBA

В этом файле храниться праволь, заданный по умолчанию:

/etc/firebird/2.5/SYSDBA.password
# Password for firebird SYSDBA user
#
# You may want to use the following commands for changing it:
#   dpkg-reconfigure firebird2.5-super
# or
#   dpkg-reconfigure firebird2.5-classic
#
# If you change the password manually with gsec, please update it here too.
# Keeping this file in sync with the security database is critical for the
# correct functioning of the init.d script and for the ability to change the
# password via `dpkg-reconfigure firebird2.5-super/classic\'
 
ISC_USER=sysdba
ISC_PASSWORD="masterkey"

Псевдонимы

aliases.conf
# ------------------------------
# List of known database aliases
# ------------------------------
 
#
# Example Database:
#
employee.fdb = /usr/share/doc/firebird2.5-common-doc/examples/empbuild/employee.fdb
employee = /usr/share/doc/firebird2.5-common-doc/examples/empbuild/employee.fdb

Доступ к серверу извне

firebird.conf
RemoteBindAddress =

Изменение пароля sysdba

По умолчанию пароль: masterkey

Запуск консоли:

gsec -user sysdba -password <ПАРОЛЬ>

Внутри консоли:

GSEC> modify sysdba -pw <НОВЫЙ ПАРОЛЬ>
GSEC> quit

Создание резервной копии БД

gbak -b ФАЙЛ_БД -user ПОЛЬЗОВАТЕЛЬ -password ПАРОЛЬ ФАЙЛ_РЕЗЕРВНОЙ_КОПИИ_БД

Пример скрипта для создания резервной копии нескольких БД:

fb_backup.sh
#!/bin/bash
 
DB_BACKUP="/srv/Backup"
DB_HOME="/srv/fb"
BACKUP_CMD="/usr/bin/gbak -B"
USER_PASSWD="-User SYSDBA -Password PASSWORD"
BACKUP_EXT=".bac"
FILE_TIME_STAMP=`date '+%d'` #День месяца
 
declare -a DB_FILE
DB_FILE[1]="db1.gdb"
DB_FILE[2]="db2.gdb"
DB_FILE[3]="db3.gdb"
 
for n in 1 2 3
do
    BACKUP_FILE=$DB_BACKUP/${DB_FILE[$n]}_$FILE_TIME_STAMP$BACKUP_EXT
    $BACKUP_CMD $DB_HOME/${DB_FILE[$n]} $USER_PASSWD $BACKUP_FILE
    /bin/gzip $BACKUP_FILE -f
done

Восстановление БД

gbak -r ФАЙЛ_РЕЗЕРВНОЙ_КОПИИ_БД -user ПОЛЬЗОВАТЕЛЬ -password ПАРОЛЬ ФАЙЛ_БД

Интерактивная оболочка SQL

isql-fb , в MS Windows isql.exe

Пример соединения с БД

connect "СЕРВЕР:ПУТЬ_ИМЯ_ФАЙЛА_БД" user 'ПОЛЬЗОВАТЕЛЬ' password 'ПАРОЛЬ';

Решение проблем

Деинсталляция (MS Windows)

FIXME

unins000.exe /SILENT /NORESTART /SUPPRESSMSGBOXES

How can I perform a command line uninstall of Firebird? - Stack Overflow

Ссылки

Логотип

https://ru.wikipedia.org/wiki/Firebird

Документация по СУБД Firebird

Документация Firebird

iBase.ru : Документация и статьи по InterBase и Firebird

iBase.ru : Мифы о Firebird и InterBase

Обновление метаданных при переходе на Firebird 2.1

Хабрахабр: Разработка → FirebirdSQL используют 11 компаний из списка ТОП-500 России

Хабрахабр: Разработка → Вышел Firebird 3.0

Хабрахабр: Разработка → Книга про разработку приложений для Firebird

Тюнинг Firebird и Linux для БД размером 691 Гб с 1000+ пользователей / Хабр