Firebird
Firebird (FirebirdSQL) — кроссплатформенная система управления базами данных (СУБД), работающая на Mac OS X, Linux, Microsoft Windows и разнообразных Unix платформах.
Firebird используется в различных промышленных системах (складские и хозяйственные, финансовый и государственный сектора) с 2001 г. Это коммерчески независимый проект C и C++ программистов, технических советников.
Среди недостатков: отсутствие кэша результатов запросов, полнотекстовых индексов, значительное падение производительности при росте внутренней фрагментации базы. Над решением этих проблем неустанно работает сообщество.
Инструмент для проектирования БД : IBExpert
Архитектуры сервера
Существует четыре различных взаимозаменяемых архитектуры сервера:
ClassicServer — один процесс на одно соединение; поддержка многопроцессорных машин.
SuperServer — все соединения используют один процесс, меньшие требования к памяти при большем быстродействии; для многопроцессорных машин (до 3.0 для однопроцессорных).
SQL основные запросы, быстро и просто (на примере Firebird)
SuperClassic Server — один процесс, но свой поток на каждое соединение. Данная архитектура введена в версии 2.5.
Embedded (встраиваемая) версия — весь движок содержится в одной библиотеке с именем клиентской библиотеки сервера, идеально подходит для однопользовательских систем, не требует инсталляции в Windows.
Установка
apt-get install firebird2.5-super
apt install firebird3.0-server
Запуск
service firebird2.5-super start
service firebird start
Настройка
По умолчанию сервер использует TCP порт 3050.
Пароль SYSDBA
В этом файле храниться праволь, заданный по умолчанию:
# 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»
Псевдонимы
# —————————— # 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
Доступ к серверу извне
RemoteBindAddress =
Изменение пароля sysdba
По умолчанию пароль: masterkey
Источник: sysadminmosaic.ru
Firebird
Firebird (FirebirdSQL) — компактная, кроссплатформенная, свободная система управления базами данных (СУБД), работающая на GNU/Linux, Microsoft Windows и разнообразных Unix платформах.
Создание базы данных Firebird
В качестве преимуществ Firebird можно отметить многоверсионную архитектуру, обеспечивающую параллельную обработку оперативных и аналитических запросов (это возможно потому, что читающие пользователи не блокируют пишущих), компактность (дистрибутив 5Mb), высокую эффективность и мощную языковую поддержку для хранимых процедур и триггеров.
Firebird используется в различных [каких?] промышленных системах с 2001 г. Это коммерчески независимый проект C и C++ программистов, технических советников и разработчиков мультиплатформенных систем управления базами данных, основанный на исходном коде, выпущенном корпорацией Borland 25 июля 2000 года в виде свободной версии Interbase 6.0.
Среди недостатков: отсутствие кеша результатов запросов, полнотекстовых индексов.
Факты о Firebird
Firebird является сервером баз данных. Один сервер Firebird может обрабатывать несколько [сколько?] независимых баз данных, каждую с множеством пользовательских соединений. Он является полностью свободным от лицензионных отчислений даже для коммерческого использования.
Основные характеристики
- Соответствие требованиям ACID: Firebird сделан специально, чтобы удовлетворять требованиям «атомарности, целостности, изоляции и надёжности» транзакций («Atomicity, Consistency, Isolation and Durability») [источник не указан 4701 день] .
- Версионная архитектура: Основная особенность Firebird — версионная архитектура, позволяющая серверу обрабатывать различные версии одной и той же записи в любое время таким образом, что каждая транзакция видит свою версию данных, не мешая соседним («читающие транзакции не блокируют пишущие, а пишущие не блокируют читающих»). Это позволяет использовать одновременно OLTP и OLAP запросы.
- Хранимые процедуры: Используя язык PSQL (процедурный SQL) Firebird, возможно создавать сложные хранимые процедуры для обработки данных полностью на стороне сервера. Для генерации отчётов особенно удобны хранимые процедуры с возможностью выборки, возвращающие данные в виде набора записей. Такие процедуры можно использовать в запросах точно так же как и обычные таблицы.
- События: Хранимые процедуры и триггеры могут генерировать события, на которые может подписаться клиент. После успешного завершения транзакции (COMMIT) он будет извещён о произошедших событиях и их количестве.
- Генераторы: Идея генераторов (последовательностей) делает возможной простую реализацию автоинкрементных полей, и не только их. Генераторы являются 64‐битными хранимыми в базе данных счётчиками, работающими независимо от транзакций. Они могут быть использованы для различных целей, таких как генерация первичных ключей, управление длительными запросами в соседних транзакциях, и т. д.
- Базы данных только для чтения: позволяют распространять базы данных, к примеру, на CD-ROM. Особенно упрощает распространение данных их использование в комбинации с встраиваемой версией сервера Firebird (Firebird Embedded).
- Полный контроль за транзакциями: Одно клиентское приложение может выполнять множество одновременных транзакций. В разных транзакциях могут быть использованы разные уровни изоляции. Протокол двухфазного подтверждения транзакций обеспечивает гарантированную устойчивость при работе с несколькими базами данных. Так же доступны оптимистическое блокирование данных и точки сохранения транзакций.
- Резервное копирование на лету: Для резервного копирования нет надобности останавливать сервер. Процесс резервного копирования сохраняет состояние базы данных на момент своего старта, не мешая при этом работе с базой. Кроме того, существует возможность производить инкрементальное резервное копирование БД.
- Триггеры: Для каждой таблицы возможно назначение нескольких триггеров, срабатывающих до или после вставки, обновления или удаления записей. Для триггеров используется язык PSQL, позволяя вносить начальные значения, проверять целостность данных, вызывать исключения, и т. д. В Firebird 1.5 появились «универсальные» триггеры, позволяющие в одном триггере обрабатывать вставки, обновления и удаления записей таблицы.
- Внешние функции: библиотеки с UDF (User Defined Function) могут быть написаны на любом языке и легко подключены к серверу в виде DLL/SO, позволяя расширять возможности сервера «изнутри».
- Декларативное описание ссылочной целостности: Обеспечивает непротиворечивость и целостность многоуровневых отношений «master-detail» между таблицами.
- Наборы символов: Firebird поддерживает множество международных наборов символов (включая Unicode) с множеством вариантов сортировки.
Соответствие стандарту SQL
- Firebird полностью поддерживает SQL 92 Entry Level 1 и реализует большую часть стандарта SQL-99 c некоторыми очень полезными дополнениями. Это включает выражения DML/DDL, синтаксис объединений FULL/LEFT/RIGHT [OUTER] JOIN, выражения UNION, DISTINCT, подзапросы (IN, EXISTS), встроенные функции (AVG, SUM, MIN, MAX, COALESCE, CASE, ..), ограничения целостности (PRIMARY KEY, UNIQUE, FOREIGN KEY), и все общие типы данных SQL.
Firebird также реализует ограничения проверки (check constraints) на уровне доменов и полей, отображения (views), исключения, роли и управление правами доступа. Для более подробной информации см. Firebird Reference Guide и Release Notes.
Требования к аппаратному обеспечению
- Firebird успешно работает на почти любом аппаратном обеспечении, и на широком спектре операционных систем [обтекаемые выражения] . Может использоваться даже не очень мощное оборудование, особенно под GNU/Linux. И как в любой СУБД, на производительность влияют: количество памяти, скорость работы дисковой подсистемы, и т. д. Рекомендации для выбора аппаратного обеспечения зависят от требования к системе, прогнозируемого размера базы данных, количества пользователей, и т. д. Допустимо начинать с минимальной конфигурации, расширяя её по мере надобности.
Доступные операционные системы
- Наиболее широко используемыми для серверов Firebird операционными системами являются GNU/Linux и Microsoft Windows (включая NT) (включая терминальные сервисы MS и Citrix). Другие поддерживаемые платформы — Mac OS X, Solaris, FreeBSD и HP-UX.
Переход от одной ОС к другой весьма прост — достаточно сделать резервную копию базы в переносимом формате в одной системе и восстановить на другой.
Средства доступа к серверу
- Firebird поддерживает множество способов доступа, включая: собственные наборы компонент для C/C++, Delphi, классы для Ada, ODBC, JDBC (Jaybird), драйверы для Python, PHP, драйвер OLE DB, dbExpress, провайдер данных .NET и прямой доступ с использованием клиентской библиотеки сервера (fbclient.dll или GDS32.dll)
Физические ограничения
- Firebird поддерживает большие базы данных. Базы данных могут быть расположены в нескольких файлах, предельный размер которых зависит от операционной системы. Теоретический предел в настоящее время составляет 64TB для одного файла базы данных, таким образом, главные ограничения накладываются файловой системой и местом на жёстком диске.
- Максимальная длина одной записи (суммарно все поля за исключением полей с типом BLOB) равна 64 КБ.
Версии сервера
- Существует три различных взаимозаменяемых версии сервера, имеющих каждая свои преимущества.
- Классик сервер (один процесс на одно соединение; поддержка многопроцессорных машин).
- Суперсервер (все соединения используют один процесс, меньшие требования к памяти при большем быстродействии; для однопроцессорных машин)
- Встраиваемая (Embedded) версия (весь движок содержится в одной библиотеке с именем клиентской библиотеки сервера, идеально подходит для однопользовательских систем, не требует инсталляции)
Все версии используют одинаковый формат файла базы данных, таким образом в любой момент можно переключиться на другую версию.
Лицензирование
- Firebird выпускается под условиями IPL(InterBase Public License) и IDPL (Initial Developer’s Public License), которые совпадают с условиями Mozilla Public License 1.1. Firebird полностью бесплатен для использования и распространения. Раскрытие исходного кода вашего продукта не требуется, вне зависимости от используемой модели лицензирования. Однако, в случае, если вы модифицировали исходный код сервера, то необходимо сделать доступным исходный код ваших модификаций.
Средства разработки и администрирования
FlameRobin
FlameRobin — поддерживает Firebird. Кросс-платформенная архитектура. Есть редактор SQL, DDL, управление пользователями.
Лицензия: open source, распространяется бесплатно.
IBExpert
IBExpert — Поддерживает Firebird, Interbase, Yaffil. Редакторы DDL и DML. Визуальный построитель запросов. Автозавершение кода, Metadata Extractor, отладчик хранимых процедур, а так же множество других возможностей.
Лицензия: Бесплатный для жителей постсоветского пространства, для остальных: от 179 евро.
IB/FB Development Studio
IB/FB Development Studio — Визуальный дизайнер баз данных, встроенный MERGE, scheduler, Code auto completion, анализатор запросов, монитор производительности.
Лицензия: Бесплатно для России, для остальных: от 149 евро.
Blaze Top
Blaze Top — Инструмент разработчика и администратора баз данных. Поддерживает Firebird и Interbase.
Лицензия: Бесплатно для России, для остальных: от 129 евро.
Database Workbench
Database Workbench — поддерживает несколько серверов баз данных, среди которых есть Firebird и Interbase. Отладка хранимых процедур, анализ планов, встроенные средства переноса данных и метаданных.
Лицензируется отдельно на Interbase и отдельно на Firebird. 171$ за каждый движок (Interbase или Firebird).
EMS SQL Manager for InterBase Firebird
Есть платная и бесплатная (lite) версия
Database Master
Database Master — средство управления системами баз данных FireBird, PostgreSQL, MySQL и SQLite. Сайт: Database Master — FireBird Management Software
Поддержка
- На главной странице проекта [1] находится множество полезных ссылок по Firebird.
Ряд компаний (например, IBPhoenix, iBase) предоставляют услугу профессиональной поддержки Firebird.
Сообщество
- Существует растущее сообщество пользователей Firebird и множество новостных групп, обеспечивающих онлайновую поддержку [1] .=== История ===
- Firebird основан на исходном коде InterBase 6.0 который был выпущен как Open Source компанией Borland в августе 2000 года. История Interbase начинается в 1984 году, таким образом, продукт является наследником более чем 20‑летнего опыта работы с реляционными базами данных [2] .
Ссылки
- Firebirdsql — Официальный сайт
- Глоссарий Firebird — Неофициальный сайт документации по Firebird на русском языке.
- IBPhoenix, Firebird Foundation Inc.
- iBase — Русское сообщество Firebird и Interbase пользователей. Поддержка.
- gmane.comp.db.firebird.russian — Русскоязычная конференция по Firebird и Interbase
- IB World — журнал о Firebird and Interbase
- Факты о Firebird Скачать в виде PDF (англ.)
- Документация — Ссылки на подробную документацию
- Утилиты и средства администрирования Ссылки на страницы представленных сообществом программ
- IBExpert — Инструмент для разработки, администрирования, написания и отладки скриптов в Firebird. Специальная лицензия для бывшего СССР.
- IBExpert — Статья о инструменте разработки администрирования, написания и отладки скриптов в Firebird.
- BlazeTop — Визуальная среда разработчика и администратора InterBase и Firebird. Бесплатная лицензия русскоязычных пользователей.
- GeminiODBC — ODBC‑драйвер. Поддерживает стандарт ODBC 3.51. Бесплатен для России.
- Jaybird — JCA/JDBC driver
- IB Provider — OLEDB драйвер для доступа к Firebird. Есть бесплатная версия позволяющая работать с OLE DB, ADO и ADO.Net
- FIBPlus — Библиотека компонентов Delphi, C++ Builder, Kylix и классов Ada для Firebird и InterBase. Специальные цены для бывшего СССР.
- Unified Interbase (UIB) — Бесплатная библиотека компонентов (Delphi, Kylix, FreePascal).
- IBAnalyst — Инструмент для углублённой проработки вопросов оптимизации работы сервера Firebird. Бесплатен.
- RSS‐каналы по Firebird
- DotNetFirebird — Использование Firebird SQL в среде .NET
- Interbase/Firebird Development Studio — Firebird Development Studio
- IBEasy+ — Бесплатный инструмент администрования для Firebird/Interbase
- Fyracle — Oracle‐mode Firebird
- Fyracle — Firebird Community Database News
- FirebirdNews — Major source of Firebird related news
- FBTalk (English) — Web-форум поддержки
- Лицензия. InterBase Public License (IPL) и Initial Developer’s Public License под которыми выпускается Firebird
- Работа в PHP
Примечания
- ↑Firebird Lists and Newsgroups (англ.) . Firebird Foundation Incorporated. Проверено 9 февраля 2010.
- ↑Кузьменко, ДмитрийInterBase и Firebird: развитие и перспективы. iBase (29.06.2006). Проверено 9 февраля 2010.
Источник: www.sbup.com
Установка и настройка FireBird SQL Server
FireBird — это открытый клон InterBase, профессионального SQL-сервера, разрабатываемого компанией Borland (ныне Inprise). Решение об открытии кода было принято еще в 2000 году, а стабильная версия, FireBird 1.0 (дистрибутив, занимает всего 2.5Mb), вышла в начале 2002 года. Он является абсолютно бесплатным продуктом.
FireBird нужен для обеспечения связи программ с базой данной.
Установка FireBird
Если на вашей системе уже установлен сервер FireBird или другой клон InterBase, то устанавливать заново нет смысла.
Сервер FireBird необходимо устанавливать на всех компьютерах, с которых хотите работать в программе. Но варианты установки отличны для серверов и рабочих станций. На сервер необходимо установить полную версию. Для рабочих станций достаточно установить только клиентскую версию.
Этапы установки
-
Запустить программу установки и выбрать каталог назначения:
-
Для серверов сети (компьютеров на которых будет храниться база данных), а также, если у Вас только один компьютер:
Выбрать параметры настройки сервера (в случае если на предыдущем этапе вы выбрали установку сервера, а не клиента)
- Для операционных систем Windows 95/98/ME
- Для операционных систем Windows NT/2000/XP
Источник: www.tradesoft.ru
Firebird
30 мая, 2013 0
Firebird (FirebirdSQL) – компактная, кроссплатформенная, свободная система управления базами данных (СУБД), работающая на Linux, Microsoft Windows и разнообразных UNIX-платформах.
Firebird является сервером баз данных. Один сервер Firebird может обрабатывать несколько сотен независимых баз данных, каждую с множеством пользовательских соединений. Он является полностью свободным от лицензионных отчислений даже для коммерческого использования.
Firebird используется в различных промышленных системах (складские и хозяйственные, финансовый и государственный сектора) с 2001 г. Это коммерчески независимый проект C и C++ программистов, технических советников и разработчиков мультиплатформенных систем управления базами данных, основанный на исходном коде, выпущенном корпорацией Borland 25 июля 2000 года в виде свободной версии Interbase 6.0.
Основные характеристики Firebird
- Соответствие требованиям ACID:
Firebird сделан специально, чтобы удовлетворять требованиям “атомарности, целостности, изоляции и надёжности” транзакций (“Atomicity, Consistency, Isolation and Durability”).
- Версионная архитектура:
Основная особенность Firebird – версионная архитектура, позволяющая серверу обрабатывать различные версии одной и той же записи в любое время таким образом, что каждая транзакция видит свою версию данных, не мешая соседним (“читающие транзакции не блокируют пишущие, а пишущие не блокируют читающих”). Это позволяет использовать одновременно OLTP и OLAP запросы.
- Хранимые процедуры:
Используя язык PSQL (процедурный SQL) Firebird, возможно создавать сложные хранимые процедуры для обработки данных полностью на стороне сервера. Для генерации отчётов особенно удобны хранимые процедуры с возможностью выборки, возвращающие данные в виде набора записей. Такие процедуры можно использовать в запросах точно так же как и обычные таблицы.
- События:
Хранимые процедуры и триггеры могут генерировать события, на которые может подписаться клиент. После успешного завершения транзакции (COMMIT) он будет извещён о произошедших событиях и их количестве.
- Генераторы:
Идея генераторов (последовательностей) делает возможной простую реализацию автоинкрементных полей, и не только их. Генераторы являются 64‐битными хранимыми в базе данных счётчиками, работающими независимо от транзакций. Они могут быть использованы для различных целей, таких как генерация первичных ключей, управление длительными запросами в соседних транзакциях, и т. д..
- Базы данных только для чтения:
Позволяют распространять базы данных, к примеру, на CD-ROM. Особенно упрощает распространение данных их использование в комбинации с встраиваемой версией сервера Firebird (Firebird Embedded).
- Полный контроль за транзакциями:
Одно клиентское приложение может выполнять множество одновременных транзакций. В разных транзакциях могут быть использованы разные уровни изоляции. Протокол двухфазного подтверждения транзакций обеспечивает гарантированную устойчивость при работе с несколькими базами данных. Также доступны оптимистическое блокирование данных и точки сохранения транзакций.
- Резервное копирование “на лету”:
Для резервного копирования нет надобности останавливать сервер. Процесс резервного копирования сохраняет состояние базы данных на момент своего старта, не мешая при этом работе с базой. Кроме того, существует возможность производить инкрементальное резервное копирование базы данных.
- Триггеры:
Для каждой таблицы возможно назначение нескольких триггеров, срабатывающих до или после вставки, обновления или удаления записей. Для триггеров используется язык PSQL, позволяя вносить начальные значения, проверять целостность данных, вызывать исключения, и т. д.. В Firebird 1.5 появились «универсальные» триггеры, позволяющие в одном триггере обрабатывать вставки, обновления и удаления записей таблицы.
- Внешние функции:
Библиотеки с UDF (User Defined Function) могут быть написаны на любом языке и легко подключены к серверу в виде DLL/SO, позволяя расширять возможности сервера “изнутри”.
- Декларативное описание ссылочной целостности:
Обеспечивает непротиворечивость и целостность многоуровневых отношений «master-detail» между таблицами.
- Наборы символов:
Firebird поддерживает множество международных наборов символов (включая Unicode) с множеством вариантов сортировки.
Достоинства Firebird
- Многоверсионная архитектура, обеспечивающая параллельную обработку оперативных и аналитических запросов (это возможно потому, что читающие пользователи не блокируют пишущих).
- Компактность (дистрибутив 5 Мб).
- Высокая эффективность и мощная языковая поддержка для хранимых процедур и триггеров.
Недостатки Firebird
- Отсутствие кэша результатов запросов, полнотекстовых индексов.
Ссылки
Источник: wikiprograms.org