Глава 28. введение в программирование в firebird
Содержание:
- Логическая репликация
- Как вести логи изменений данных пользователями в базе данных, сохраняя их в другой базе данных
- Конструктор мобильного клиента Simple WMS Client: способ создать полноценный ТСД без мобильной разработки. Теперь новая версия — Simple UI (обновлено 14.11.2019)
- Книга про разработку приложений для Firebird
- Установка режимов клиент/сервер и встроенного режима сервера
- Доступ к базе данных Firebird из YII2
- Безопасность Firebird
- Соответствие требованиям SQL
- Установка и работа программы
- Firebird что это за программа
- Faster — многофункциональный ускоритель работы программиста 1С и других языков программирования Промо
- Подсистема «Показатели объектов»
- Интеграция 1С и C#. Обращение к 1С через COM. Создание номенклатуры и выполнение запроса к 1С из C# на примере интеграции с Союз-PLM (система информационной поддержки жизненного цикла изделий). Обработка «Загрузка заказа на сборку». (ERP)
- Firebird что это за программа?
- Написание UDR на языке Pascal
- Навигатор по конфигурации базы 1С 8.3
- Можно ли установить 2 разных сервера на один компьютер
- История
Логическая репликация
В Firebird 4.0 предоставляет встроенную поддержку однонаправленной логической репликации. Репликация, в первую очередь обеспечивает высокую доступность, но может использоваться и для других задач.
Репликация отслеживает следующие события:
- добавление, обновление и удаление записей в таблицах
- изменение последовательностей (генераторов)
- DDL операторы
Поддерживаются синхронный и асинхронный режимы.
При синхронной репликации основная (главная) база данных постоянно подключена к репликам (подчиненным базам данных) и изменения реплицируются немедленно. По сути, базы данных синхронизируются после каждой фиксации каждой транзакции, что может повлиять на производительность из-за дополнительного сетевого трафика.
При асинхронной репликации изменения записываются в файлы локального журнала, передаются по сети и применяются к реплике базы данных. Влияние на производительность намного меньше, но вызывает задержку (отставание репликации) пока изменения ожидают применения к реплике базы данных, т.е. реплика базы данных всегда «догоняет» основную базу данных.
Как вести логи изменений данных пользователями в базе данных, сохраняя их в другой базе данных
Уважаемые читатели. Это вторая статья из цикла по базам данных. Решил сделать некоторое оглавление по планируемым статьям этого цикла:
- Как сделать разный часовой пояс в разных базах данных на одном сервере.
- Как вести логи изменений данных пользователями в базе данных, сохраняя их в другой базе данных, для того чтобы основная база данных не забивалась мусором и не росла.
- Как создать свою файловую систему на основе blob полей в базе данных. Почему это удобно. Вопросы эффективности хранения файлов: как получить максимальное быстродействие и при этом минимальное занимаемое место.
Я был удивлен количеством комментариев к первой статье, поэтому сразу хочу заметить, что не претендую на единственно правильный способ реализации. Я уверен, что творческие люди найдут еще немало других способов реализовать данную задачу. Но реализуя ее в свое время, я не нашел ни одной статьи с описанием такого функционала и делать данную задачу пришлось с нуля, хотя она на мой взгляд актуальна. Реализация, которую я буду описывать, полностью рабочая и используется мной на практике.
Так же я приветствую конструктивную критику. Бывает люди пишут интересные вещи и ты можешь взглянуть на проблему под углом, о котором не предполагал и как-то улучшить свои механизмы.
Итак начнем.
База данных firebird 3.
Формулировка задачи следующая: необходимо писать подробные логи изменений данных пользователями в базе данных (insert, update, delete), но при этом писать их в другой базе данных на другом сервере. Необходимо это для того чтобы размер основной базы данных не рос как на дрожжах, ее удобно было бекапить, ресторить, чтобы она работала быстро, не накапливала мусора, не содержала лишней и редконужной информации.
Конструктор мобильного клиента Simple WMS Client: способ создать полноценный ТСД без мобильной разработки. Теперь новая версия — Simple UI (обновлено 14.11.2019)
Simple WMS Client – это визуальный конструктор мобильного клиента для терминала сбора данных(ТСД) или обычного телефона на Android. Приложение работает в онлайн режиме через интернет или WI-FI, постоянно общаясь с базой посредством http-запросов (вариант для 1С-клиента общается с 1С напрямую как обычный клиент). Можно создавать любые конфигурации мобильного клиента с помощью конструктора и обработчиков на языке 1С (НЕ мобильная платформа). Вся логика приложения и интеграции содержится в обработчиках на стороне 1С. Это очень простой способ создать и развернуть клиентскую часть для WMS системы или для любой другой конфигурации 1С (УТ, УПП, ERP, самописной) с минимумом программирования. Например, можно добавить в учетную систему адресное хранение, учет оборудования и любые другие задачи. Приложение умеет работать не только со штрих-кодами, но и с распознаванием голоса от Google. Это бесплатная и открытая система, не требующая обучения, с возможностью быстро получить результат.
5 стартмани
Книга про разработку приложений для Firebird
Читатели Хабра знают, что я (Денис Симонов) уже некоторое время работаю над серией статей и примеров, которые подробно раскрывают особенности разработки приложений для СУБД Firebird для популярных языков и фреймворков: уже написаны 3 статьи по ADO.NET desktop, ASP.NET MVC и Delphi, в работе для PHP, Java, Android. Также, c 2014 года я являюсь редактором русской документации языку Firebird и членом международной группы документации Firebird.
В процессе работы над примерами я пришел к выводу, что нужно объединять эти статьи и логически дополнять до полноценной книги, посвященной разработке именно под Firebird. Хотя по разработке есть много материалов, и есть русская документация по языку SQL, книга, с последовательным изложением процесса создания приложений и описанием основных ошибок новичков, будет полезна.
Вы спросите – собственно, причем здесь Хабр?
Установка режимов клиент/сервер и встроенного режима сервера
Firebird может работать в режиме клиент/сервер и в режиме встроенного сервера.
Client/Server означает, что у вас где-то есть физический сервер Firebird: либо на локальной машине, либо на другой машине, доступной по вашей сети. Соединения с сервером проходят через TCP/IP; при указании соединения имя хоста содержит имя или IP-адрес. Серверу Firebird для «общения» с вашими компонентами доступа необходима fbclient.dll/fbclient.so.nnn (вместе с его файлами поддержки).
Embedded Firebird означает, что ваше приложение для доступа к базе данных Firebird на локальной машине загружает единственную библиотеку, которая является и сервером, и клиентской библиотекой Firebird «в одном флаконе». При указании строки соединения имя хоста всегда пусто (не указывается). Серверу Firebird для «общения» с вашими компонентами доступа необходима fbembed.dll/fbembed.so (вместе с его файлами поддержки).
См. вики-страницу на Firebird embedded для более подробной информации.
Обратите внимание, что fbembed.dll может использоваться как для клиент-серверного, так и для встроенного использования, поэтому установка только этой dll может быть разумной задачей.
Прим.перев.: необходимо уточнить, что выше описанное справедливо для версий FB 1.5, FB 2.0, FB 2.1 и FB 2.5. Начиная с версии FB 3.0, режим используемого сервера зависит от строки подключения, а клиентская библиотека на все случаи жизни одна — все та же fbclient.dll/libfbclient.so.3.0.n (где n — номер билда версии FB).
Windows
Win64: пожалуйста, см. предупреждение о нежелательном использовании некоторых версий FPC/Lazarus Win64.
Для Windows: (это относится ко всем драйверам базы данных SQLDB) необходимо иметь fbclient.dll (или fbembed.dll’ ) и его поддержку dll, установленных в:
- каталог проекта и каталог вывода исполняемого файла/каталог приложения (например, lib /что-то еще в каталоге вашего проекта)
- или каталог в вашем PATH (не в системном каталоге)
- Если вы хотите использовать системный каталог, пожалуйста, используйте официальный установщик и поставьте галочку «скопировать fbclient в системный каталог»
Как и для всех библиотек DLL (базы данных), разрядность библиотеки DLL должна соответствовать вашему приложению: используйте 32-разрядную библиотеку для 32-разрядной скомпилированной программы и 64-разрядную библиотеку для 64-разрядной программы.
Unix/Linux/macOS
В Linux/macOS/FreeBSD должна быть установлена клиентская библиотека Firebird (например, вашим менеджером пакетов; установите обычный пакет и пакет -dev), или они должны быть прописаны в путях поиска библиотеки.
FPC ищет наиболее распространенные имена библиотек (например, libfbclient.so.2.5, libgds.so и libfbembed.so.2.5; пожалуйста, проверьте ibase60.inc, если ваша версия отличается). При желании можно указать имя библиотеки. Есть 2 способа сделать это:
- использовать компонент TSQLDBLibraryLoader из sqldblib (FPC 2.7.1). Работает для всех компонентов коннектора SQLDB.
- вызвать функцию
function InitialiseIBase60(Const LibraryName AnsiString) integer;
с правильным именем библиотеки (для этого может потребоваться использовать модуль ibase60dyn).
Доступ к базе данных Firebird из YII2
Из песочницы
Так получилось, что мне понадобилось переносить интерфейс пользователя из связки Delphi + Firebird в WEB. Дабы не останавливать работу комплекса программ, решено было переносить формы постепенно, а для этого необходимо сохранить работу СУБД Firebird и подключаться к ней из web приложения. При разработке web-приложения я решил использовать фреймворк YII2. На этапе разработки мне не нужен полноценный HTTP сервер, вполне сойдет Denwer или XAMMP, или что-то еще. Я выбрал XAMMP т.к. в Денвере давно не обновляется версия PHP, а руками заниматься его обновлением не хочется, идем по пути наименьшего сопротивления. Изначально ни в XAMMP PHP, ни в YII2 нет возможности работать с СУБД Firebird, но при определенных танцах с бубном сделать это вполне реально. Итак, я буду полагать, что у Вас уже установлены: Windows 7 x64, XAMMP и YII2, Firebird 2.5.
Пути установки пакетов у меня (для себя вводите соответствующие корректировки):
- Firebird 2.5 версия x64 (тип сервера значения не имеет) в C:\Program Files\Firebird\Firebird_2_5\
- XAMMP установлен в D:\xampp\
- YII2 установлен в D:\xampp\htdocs\yii\
- БД расположена в пути D:\WORK\database\TBOT.GDB
Теперь можно начинать.
Безопасность Firebird
- Firebird хранит всех пользователей в одной служебной базе данных security.fdb.
- Начиная с Firebird 2.1 реализована поддержка SSPI аутентификации средствами Windows. Администраторы домена на уровне БД определяются как суперпользователи SYSDBA.
- В Firebird 3.0 планируется реализовать возможность хранения пользователей в клиентской базе данных.
Пользователь SYSDBA. Смена пароля по умолчанию
SYSDBA — это административный пользователь Firebird с исключительными правами. Пароль по умолчанию: masterkey. Для того чтобы сменить пароль, используйте утилиту gsec из состава Firebird:
При помощи утилиты gsec можно создавать, удалять, модифицировать и просматривать пользователей. Полный список команд можно получить, набрав help.
Соответствие требованиям SQL
Эта программа имеет возможность в полной мере поддерживать SQL-92 Entry Level. Таким образом доступен любой запрос и появляется возможность пользоваться встроенными функциями. Реализация ограничения проверок в доменных полях реализуется также с помощью этой утилиты.
Необходимо учесть, что скорость и качество памяти имеет непосредственное отношение к производительности. Эта утилита может воспроизводиться многими платформами, которые связаны между собой легкими переходами. Также для работы с сервером не обязательно использовать слишком мощное оборудование.
Какими операционными системами лучше пользоваться
В наше время последние сервера разработаны лишь для 32 и 64-разрядных версий Windows, Linux и MacOS X. Можно легко переходить из одной операционной системы в другую. При этом копируется база данных в одной системе и воспроизводится в другой.
Установка и работа программы
Несмотря на то, что Firebird является мощной СУБД и может работать с достаточно большими базами данных и с сотнями пользователей, её инсталлятор весит обычно не более 7 Мб (в зависимости от версии операционной системы), программа не займёт много места на жёстком диске. Процесс инсталляции выполняется в автоматическом режиме, так что с этим трудностей не возникает. Софт не требует настройки, запускается сразу после установки и работает в автоматическом режиме без участия в процессе системных администраторов.
Как запустить приложение Firebird
Когда Firebird выполняется как приложение, в системном трее будет видна его иконка, вид которой зависит от того, запущен только сервер или он контролируется Guardian. Управление посредством службы Guardian рекомендовано при выполнении Суперсервера, в случае с Классическим сервером Guardian не требуется, её можно не ставить при инсталляции.
Запускает Firebird инсталлятор, но если сервер не был запущен или инициализирован, до установки автоматического старта запускать или инициализировать его придётся вручную. Это можно сделать через Пуск – Все программы – Firebird или с командной строки. Команда для старта Guardian fbguard.exe -a или ibguard.exe -а (для версии 1.0.x), для запуска Суперсервера напрямую следует набрать fbserver.exe -a или ibserver.exe -а (для версии 1.0.x). Для Классического сервера также можно вызвать окно командной строки, перейти в каталог in и ввести fb_inet_server.exe -a. Если при установке софта выбран режим «Use Guardian», запустить службу можно из того же каталога командой fbguard.exe -с -a.
Как пользоваться Firebird
Кроме СУБД для полноценного функционирования нужна также IBExpert, оболочка, требуемая для разработки и администрирования. Она, как и Firebird Server, идёт в связке с программой. После того, как скачали инсталлятор с официального ресурса, начинаем установку. От пользователя требуется минимальное участие, инсталляция выполнится автоматически. По умолчанию настроен автоматический запуск, который будет осуществляться при каждом старте компьютера.
Чтобы начать работу, нужно запустить IBExpert, при первом старте оболочки потребуется ответить на запрос об использовании многотипных элементов интерфейса. В случае согласия интерфейс скопирует набор инструментов DELPHI.
Выполняем следующие действия, чтобы создать первую базу:
- В главном меню выбираем «База данных».
- Жмём «Создать».
- В новом окне в пункте «Сервер» выбираем «Локальный».
После этого потребуется выбрать место хранения базы данных, прочие параметры будут заполнены автоматически. Для пользователя с логином SYSDBA применяется пароль по умолчанию masterkey. Чтобы сохранить настройки, жмём «Ок».
В Firebird поддерживаются типы данных SQL, кроме того введены динамически изменяемые большие двоичные данные и многомерные однородные массивы. Доступные типы данных зависят от версии СУБД. Значения определяются для каждого столбца в таблице Firebird, они указывают на характеристики данных и определяют, какие операции могут выполняться с ними, а также какое дисковое пространство занимают элементы.
Откуда Firebird попал к вам на компьютер
Если вы не качали конкретно Firebird, софт мог установиться вместе с другой программой, использующей его для корректного функционирования. В таком случае удалять Firebird не следует, поскольку такие действия приведут к неприятным последствиям в виде отказа работы программного обеспечения, которое обращается к СУБД.
Firebird что это за программа
Firebird (Firebird SQL) — это программа или реляционная система управления базами данных (СУБД), способная работать на ОС Linux, Microsoft Windows, MacOS X, Solaris Sparc, HP-UX, FreeBSD и других разнообразных Unix платформах. Эта программа Firebird не требует постоянного администрирования. Она основана на исходном коде, который был выпущен корпорацией Borland в 2000 году в качестве Interbase 6.0 (свободной версии). Firebird совместима со стандартом SQL’92.
Что это Firebird?
СУБД Firebird является независимым проектом программистов (C и C++), разработчиков систем управления базами данных и технических советников. Используется в самых разнообразных системах как негосударственного, так и государственного секторов. Основными причинами для перехода являются:
- Оригинальные функции Firebird и простота в использовании. Особенно относится к версии MS SQL 6.5, которая работает с devices (фиксированными устройствами), а не с динамически расширяющимися файлами. Это весомое преимущество, поскольку данный вариант способен привести к определенным проблемам при администрировании.
- Дополнительный сервер и хранилище. MS SQL предлагает, и даже рекомендует, пользователям приобрести еще один дополнительный сервер (операционную систему, оборудование или сервер баз данных), чтобы установить его как хранилище данных для генерации всех отчетов.
- Нет привязки к поставщику ПО. MS SQL работает только на Windows NT2000, а значит, что Вы «привязаны» к ОС Microsoft. А вот эта программа Firebird не имеет привязки к какому-либо поставщику программного обеспечения. Система может работать и на Windows, и на множестве других платформах, включая Linux, MacOS X, Solaris и т.д.
- Открытость исходных кодов. Исходные коды Firebird открыты, что позволяет максимально комфортно использовать эту СУБД, вносить изменения и улучшать, находить ошибки. Если Вы хорошо понимаете исходный код, добавление таких функций и повышение гибкости в системе не составит особого труда.
- Отсутствие стоимости. Известно, что это программа Firebird является совершенно бесплатной системой, в то время как за использование сервера MS SQL взимается плата за каждый процессор, собственно на котором он работает.
Стоит отметить, что сервер Firebird может обработать не одну сотню независимых баз данных, каждая из которых — с большим количеством пользовательских соединений. Для обеспечения резервного копирования останавливать сервер нет необходимости.
Инструкция по удалению Firebird
- Удаление через «Панель управления». Чтобы остановить СУБД FireBird 1.5 через «Панель управления», необходимо открыть окно «FireBird Server Control», запустив FireBird 1.5 Server Manager, и выбрать действие «Stop». Подтвердите, нажав «OK».
- Удаление через «Установку и удаление». Для начала следует открыть «Панель управления», а затем раздел «Установка и удаление программ». В списке выделить программу СУБД FireBird 1.5 и выбрать действие «Удалить» Firebird. Для подтверждения удаления нажать на кнопку «Да». В следующем окне, появившемся после вышеперечисленных действий, выберите «Yes to All» и подтвердите, нажав «ОК». После успешного удаления останется лишь перезагрузить компьютер.
(0 , в среднем: 0 из 5)
Faster — многофункциональный ускоритель работы программиста 1С и других языков программирования Промо
Программа Faster 9.4 позволяет ускорить процесс работы программиста
(работает в любом текстовом редакторе).
Подсказка при вводе текста на основе ранее введенного текста и настроенных шаблонов.
Программа Faster позволяет делится кодом с другими программистами в два клика или передать ссылку через QR Код.
Исправление введенных фраз двойным Shift (с помощью speller.yandex). Переводчик текста. Переворачивает текст случайно набранный на другой раскладке.
Полезная утилита для тех, кто печатает много однотипного текста, кодирует в среде Windows на разных языках программирования.
Через некоторое время работы с программой у вас соберется своя база часто используемых словосочетаний и кусков кода.
Настройка любых шорткатов под себя с помощью скриптов.
Никаких установок и лицензий, все бесплатно.
1 стартмани
Подсистема «Показатели объектов»
Если вашим пользователям нужно вывести в динамический список разные показатели, которые нельзя напрямую получить из таблиц ссылочных объектов, и вы не хотите изменять структуру справочников или документов — тогда эта подсистема для вас. С помощью нее вы сможете в пользовательском режиме создать свой показатель, который будет рассчитываться по формуле или с помощью запроса. Этот показатель вы сможете вывести в динамический список, как любую другую характеристику объекта. Также можно будет настроить отбор или условное оформление с использованием созданного показателя.
2 стартмани
Интеграция 1С и C#. Обращение к 1С через COM. Создание номенклатуры и выполнение запроса к 1С из C# на примере интеграции с Союз-PLM (система информационной поддержки жизненного цикла изделий). Обработка «Загрузка заказа на сборку». (ERP)
Союз-PLM представляет собой полнофункциональный программный комплекс для решения широкого спектра задач управления инженерной технической информацией наукоемких изделий и сложных инженерных объектов в области машиностроения, приборостроения, архитектуры, строительства.
На практике, это управление конструкторской документацией, интегрированное с САПР, бизнес-процессы, файловый архив. Все это работает в SQL и шевелится с помощью скриптов на C#. Скрипты свободно отлаживаются в MS Visual Studio. Подробнее смотрите на их сайте: http://www.programsoyuz.ru/products/system-soyuz-plm.html Редактирование, конструирование и использование бизнес-процессов на порядок лучше систем на базе 1С из тех, что я изучил.
1 стартмани
Firebird что это за программа?
- 1 Firebird. Что НЕ надо делать
- 1.1 Не надо логиниться к одной базе с разными путями
- 1.2 Не надо выбирать на клиента большие обьемы данных
- 1.3 Не надо получать новый номер путем SELECT MAX(ID)+1
- 1.4 Не надо устанавливать значения генераторов (например в 0) внутри процедур и тем более триггеров
- 1.5 Не надо делать большие расчеты в одной транзакции
- 1.6 Не надо делать PageSize = 1024 или 2048
- 1.7 Не надо делать коммит после каждой записи, если это не требуется по смыслу
- 1.8 Не надо делать commit после вставки каждой записи, если вы их вставляете больше 10 за один раз
- 1.9 Не надо увлекаться ссылочной целостностью больше чем это требуется
- 1.10 Не создавайте ненужные индексы
- 1.11 Не стройте индексы по полям, содержащим наименьшее количество разных значений
- 1.12 Не стройте индексы по полям PK, FK, UNIQUE
- 1.13 Не рекомендуется увлекаться outer join
- 1.14 Не рекомендуется использовать связку «таблица+ХП»
- 1.15 Не рекомендуется употреблять подзапросы в списочном контексте, то есть in (…), =all(…), =some(…)
- 1.16 Не надо увлекаться компонентом TTable и аналогичными
- 1.17 Нельзя создавать триггеры с именами вроде CHECK_xxx
- 1.18 Не рекомендуется создавать свои объекты с префиксом RDB$
- 1.19 Не рекомендуется создавать роль (role) с именем любого из существующих пользователей
- 1.20 Не надо использовать тип FLOAT
- 1.21 Не используйте маски (*.gdb) для gbak!!!
- 1.22 Не создавайте столбцы с одинаковыми именами но в разном регистре в третьем диалекте
- 1.23 Не надо копировать базу обычной файловой командой (операцией) copy в то время, когда сервер работает с базой
- 1.24 Не надо делать restore (gbak -r) поверх существующей базы данных
- 1.25 Ни в коем случае не меняйте во время работы доменное имя сервера
- 1.26 Нельзя в одной транзакции менять медаданные и тут же выполнять запросы, которые используют эти метаданные
- 1.27 Не нужно смешивать в одном запросе синтаксис явных и неявных JOIN
- 2 Характеристики программы для работы с базами данных Firebird
- 3 Firebird – что это за программа и как с ней работать
Добавил admin | Категория Наши материалы | 12 Августа 2014
Не надо логиниться к одной базе с разными путями
В этом случае очень вероятно повреждение базы вплоть до ее полного уничтожения. Т.е. не надо использовать link-и на файлы и каталоги БД в unix, и не надо ошибаться и под win писать путь коннекта как c:dir\data.gdb вместо правильного c:\dir\data.gdb.этот совет не относится к разным именам одного и того же сервера в строке коннекта.
Написание UDR на языке Pascal
В Firebird уже достаточно давно существует возможность расширения возможностей языка PSQL с помощью написания внешних функций — UDF (User Defined Functions). UDF можно писать практически на любом компилируемом языке программирования.
В Firebird 3.0 была введена плагинная архитектура для расширения возможностей Firebird. Одним из таких плагинов является External Engine (внешние движки). Механизм UDR (User Defined Routines — определяемые пользователем подпрограммы) добавляет слой поверх интерфейса движка FirebirdExternal.
В данном руководстве мы расскажем как объявлять UDR, о их внутренних механизмах, возможностях и приведём примеры написания UDR на языке Pascal. Кроме того, будут затронуты некоторые аспекты использования нового объектно-ориентированного API.
Навигатор по конфигурации базы 1С 8.3
Универсальная внешняя обработка для просмотра метаданных конфигураций баз 1С 8.3.
Отображает свойства и реквизиты объектов конфигурации, их количество, основные права доступа и т.д.
Отображаемые характеристики объектов: свойства, реквизиты, стандартные рекизиты, реквизиты табличных частей, предопределенные данные, регистраторы для регистров, движения для документов, команды, чужие команды, подписки на события, подсистемы.
Отображает структуру хранения объектов базы данных, для регистров доступен сервис «Управление итогами».
Платформа 8.3, управляемые формы. Версия 1.1.0.69 от 27.09.2020
3 стартмани
Можно ли установить 2 разных сервера на один компьютер
Если речь идет об одновременной работе этих серверов, то теоретически — да. Практически это зависит от версий, которые вы собираетесь использовать. Например, одновременно запустить два сервера IB 6.0 на одном компьютере нельзя.
Каждая версия сервера использует свои собственные:
- настройки и пути в registry
- системные объекты (mutex, семафоры и т.п.)
- конфигурационный файл
Например, Firebird 1.5, Yaffil и InterBase 7.x сейчас имеют свои собственные вышеперечисленные характеристики. Единственный конфликтный параметр — это номер порта, используемый клиентом и сервером для работы по TCP. Соответственно, при одновременном запуске этих серверов нужно знать, что только клиентские части FB и Yaffil могут принимать альтернативный номер порта в строке коннекта (например, srv/3070:c:\dir\data.gdb). А на сервере номер порта, используемого конкретным сервером, устанавливается: Firebird 1.5 — в firebird.conf, Firebird 1.0 — services, InterBase — services, Yaffil — ключи командной строки ibserver.exe (это на Windows. На Linux разводка по портам осуществляется конфигурированием inetd/xinetd).
Будьте осторожны при запуске двух серверов одновременно — если вы перепутаете и откроете базу не тем сервером (если базы имеют одинаковый ods), то возможны проблемы при дальнейшей работе правильной комбинации сервер+база данных (несовместимый код BLR процедур или триггеров и т.п.).
История
Через неделю после того, как Borland выпустила исходный код InterBase 6.0 25 июля 2000 г., на SourceForge был создан проект Firebird . Firebird 1.0 был выпущен для Linux, Microsoft Windows и Mac OS X 11 марта 2002 года с портами на Solaris , , HP-UX в течение следующих двух месяцев.
Работа по переносу кодовой базы с C на C ++ началась в 2000 году. 23 февраля 2004 года была выпущена Firebird 1.5, которая стала первым стабильным выпуском новой кодовой базы. Версия 1.5 включает улучшенный оптимизатор запросов , условные выражения SQL-92 , точки сохранения SQL: 1999 и поддержку явной . Firebird 2.0 был выпущен 12 ноября 2006 года, добавив поддержку 64-битных архитектур, таблиц , вложенных в FROM положений и программируемых замков таймаутов в блокировании операций .
Предыдущим стабильным выпуском была версия 2.1.6, в которой были добавлены новые функции, включая процедурные триггеры , рекурсивные запросы и поддержку операторов MERGE SQL: 2003 .
Firebird 2.5 представил новые функции, такие как улучшенная многопоточность , синтаксис регулярных выражений и возможность запрашивать удаленные базы данных.
Самая последняя стабильная версия — Firebird 3.0, выпущенная 19 апреля 2016 года, с упором на производительность и безопасность. Существенная реорганизация кода позволила полностью поддерживать SMP- машины при использовании версии SuperServer.
В рамках Google Summer of Code 2013 началась работа по интеграции Firebird в качестве замены HSQLDB в LibreOffice .
Конфликт имен Mozilla Firefox
В апреле 2003 г. объявила о переименовании своего веб-браузера с Phoenix в Firebird после спора о товарных знаках с Phoenix Technologies .
Это решение вызвало озабоченность в проекте базы данных Firebird из-за предположения, что пользователи и поисковые системы в Интернете будут сбиты с толку базой данных и веб-браузером, использующим имя Firebird. Разработчики Mozilla выступили с заявлением, в котором разъясняли, что их программный пакет называется «Mozilla Firebird», а не «Firebird». В заявлении также говорится, что название Mozilla Firebird было .
Спор был разрешен 9 февраля 2004 года, когда Mozilla изменила название своего браузера на Mozilla Firefox , что положило конец конфликту.