Firebird для windows 10

Содержание:

Интеграция 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 стартмани

Выбор СУБД для мобильного Delphi-приложения

Из песочницы

Данная статья написана по мотивам – мотивам разработки мобильного приложения, недавно вышедшего на платформах iOS и Android. Это событие можно было бы назвать заурядным и мало кому интересным, если бы не одно большое и несколько незначительных «но»: вся разработка (включая сервер) велась на Delphi, а в качестве СУБД, как ни странно, задействована совсем не SQLite. Автор, безусловно, понимает, что на текущий момент уже существуют мобильные Delphi-приложения, включая доступные в официальных магазинах, однако не наблюдает обилия русскоязычных публикаций, призванных, как минимум, предостеречь читателей от ошибок, сделанных разработчиком таких проектов. Написанное же здесь преследует цель помочь тем, кто сейчас выбирает СУБД для своего творения, либо уже остановился на каком-то варианте, но желает убедиться в правильности своего решения.
Прежде чем начать, необходимо дать краткое представление о разработанном приложении – это список покупок, имеющий в своём запасе некоторый уникальный функционал. Если кто-то сам уже пользуется (или пользовался) одним из многочисленных аналогов, то сейчас мог скептически хмыкнуть – мол зачем ещё один, и так есть из чего выбрать, на что можно лишь посоветовать продолжить чтение, чтобы ознакомиться с его принципиальной особенностью.

Какой размер страницы выбрать?

В InterBase при создании БД обычно используется умолчательный размер страницы в 1 килобайт (1024 байта). Такое значение было сформировано по умолчанию достаточно давно, поэтому сейчас не актуально.

Для большинства современных баз данных следует выбирать размер страницы в 4К (4096 байт), а также для файловой системы, где эта БД будет располагаться, выбрать размер кластера равный тем же 4К.

Размер страницы в первую очередь влияет на индексы с длинными (строковыми) ключами. Чем больше размер ключа или средний размер записи таблицы, тем больший размер страницы следует выбрать. Также стоит выбрать больший размер страницы, если в БД предполагается хранить много blob размером 50К и больше.
Разные версии серверов допускают разные предельные размеры страниц для БД. Например, InterBase не может создать БД со страницами больше 8К, а Firebird имеет ограничение на размер страницы в 16К.
Также можно учесть особенности конкретной файловой системы — например, на W2K можно создавать логические диски с размером кластера = 8К, однако такой том будет невозможно дефрагментировать.

2009

1.5 (1.5.6 от октября 2009, последний релиз ветки 1.5 (End of series))

Firebird 1.5 выпущен на базе Firebird 1.0, с переводом кода с C на C++

  • Восстановлена архитектура Classic для Windows
  • создан вариант embedded
  • расширен SQL — CASE, COALESCE, NULLIF
  • изменено имя базы безопасности (security.fdb) и других модулей — клиента, файла сообщений
  • новый файл конфигурации firebird.conf, с новыми параметрами
  • передача varchar по сети в «сжатом» виде
  • триггеры мульти-действий (insert or update or delete)
  • индексы по constraint PK, FK, Unique автоматически принимают имя constraint (если задано)

индексов у таблицы может быть до 256 (раньше было не более 64)

  • улучшенная обработка ошибок. Расширенная обработка ошибок в процедурах и триггерах
  • разрешается пустой блок BEGIN/END
  • новые таблицы символов
  • расширения в ISQL
  • новые функции в ib_udf и fbudf
  • улучшения оптимизатора

Поддерживаемые версии

2.0 (последний релиз 2.0.6)

  • ускорена передача данных по сети
  • локальный протокол заменен на XNET
  • убрана трансляция прав доступа через NetBEUI
  • новая политика сборки мусора (см. firebird.conf, GCPolicy)
  • Classic поддерживает все функции Services API, идентично SuperServer
  • параметр лимита ожидания по блокировкам WAIT
  • ускоренный поиск в строках и blob
  • исправления обновляемых view
  • новые режимы shutdown БД
  • новый формат БД — теперь одна таблица может иметь размер больше 36 гигабайт
  • новый формат БД — индексируемая строка может быть 1/4 размера страницы (до 4к при размере страницы 16к)
  • значительные улучшения оптимизатора
  • расширения клиентского API
  • новые встроенные строковые функции (lower, trim)
  • инкрементальный бэкап (nbackup)

Подключение к Firebird из клиентского приложения

Для начала скачайте и установите пакет IBProvider Professional Edition.

IBProvider Professional Edition — это набор COM-компонент, которые позволяют работать с любыми версиями Firebird и InterBase. Компоненты поддерживаются большинством средств разработки: Delphi, C++ Builder, Visual C++, .Net Framework, C#, Visual Basic, VBScript, VBA и др.

Для проверки подключения к Firebird напишем простой сценарий на языке VBScript. Создайте пустой файл с расширением vbs и вставьте в него следующий код, указав правильный путь к базе данных:

Dim cn, cmd, rs, i
Set cn = CreateObject ("ADODB.Connection")

cn.Open "Provider=LCPI.IBProvider.3;" & _
	    "Data Source=localhost:d:\temp\test.fdb; " & _
	    "User Id=SYSDBA;" & _
	    "password=masterkey;" & _
	    "ctype=win1251;" & _
	    "auto_commit=true"

set rs = cn.execute("select * from MON$ATTACHMENTS")

do while not rs.EOF

   for i=0 to rs.Fields.Count - 1
       wscript.echo rs(i).Name & "=" & rs(i).Value
   next

   rs.MoveNext
loop

rs.close
cn.close

Запустите скрипт на выполнение в режиме командной строки, и вы увидите список активных подключений к БД.

Firebird и VBScript, Visual Basic, VBA

Для доступа к Firebird и InterBase из VBScript, VBA, Visual Basic используется библиотека ADO (ActiveX Data Objects). Множество примеров работы с этой библиотекой вы найдете в документации: примеры InterBase, Firebird VBScript, VBA, Visual Basic.

Firebird и Delphi

IBProvider предлагает несколько способов работы с InterBase и Firebird из Delphi:

  • dbGo (ADO Express) компоненты, работающие через библиотеку ADO.
  • прямой доступ к COM-интерфейсам ADO, минуя компоненты dbGo.
  • прямой доступ к COM-интерфейсам OLE DB при помощи сторонних VCL-компонент (OLE DB Direct/OLE DB Express).

Примеры работы Firebird Delphi, InterBase Delphi

Firebird и .Net

Для доступа к Firebird из .Net используется библиотека ADO.NET. На сайте IBProvider опубликовано большое пошаговое руководство, посвященное работе с Firebird в Visual Studio .Net (ADO.NET).

Дополнительные материалы по теме:

  • Примеры работы с ADO .Net для начинающих
  • Firebird 2.0 и ADO .Net (c#)
  • Firebird 2.1 и ADO .Net (c#)

Firebird и C++

В состав IBProvider Professional Edition входит C++ библиотека, которая предоставляет самый быстрый способ работы с OLE DB провайдерами из Visual C++ 2005-2008, а так же из C++ Builder.

Установка и работа программы

Кроме самой Firebird для нормальной работы понадобится IBExpert. Это специальная оболочка, которая необходима при разработке и администрировании базы данных. IBExpert идет в комплекте с пакетом установки СУБД. А также вместе с программой устанавливается и Firebird Server. Что это? FbServer — один из компонентов ПО, необходимый для правильной работы утилиты.

Итак, для начала нужно скачать программу на компьютер (желательно из официального источника). Затем нужно запустить установку Firebird. При последующих включениях компьютера программа будет запускаться автоматически.

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

Для создания первой в Firebird базы данных нужно:

  1. Найти вверху слева первый пункт главного меню «База данных» и выбрать его.
  2. В открывшемся списке выбрать команду «Создать».
  3. Появится окно создания базы данных. В первом пункте «Сервер» выбрать «Локальный».

Затем нужно выбрать место для хранения базы. Остальные настройки будут введены автоматически (имя пользователя, пароль). У пользователя с именем SYSDBA есть на сервере все привилегии. К нему в системе прилагается пароль — masterkey. Для сохранения всех настроек и завершения создания БД нажать «ОК».

MacOS X

Note

«lipo» builds are the 64-bit Firebird Server with client libs as fat lib (32 and 64 bits).

MacOS X 10.4+ 32-bit Classic (Intel)
Date Filename Size Description
9th Dec 2014 FirebirdCS-2.1.7-18553-i386.pkg.zip 13.0 Mb 32-bit package
MacOS X 10.4+ 32-bit Superserver (Intel)
9th Dec 2014 FirebirdSS-2.1.7-18553-i386.pkg.zip 13.0 Mb 32-bit package
MacOS X 10.5+ 64-bit Classic (Intel)
9th Dec 2014 FirebirdCS-2.1.7-18553-x86_64.pkg.zip 13.0 MB 64-bit package
9th Dec 2014 FirebirdCS-2.1.7-18553-lipo-x86_64.pkg.zip 18.0 Mb 64-bit Lipo package
MacOS X 10.5+ 64-bit Superserver (Intel)
9th Dec 2014 FirebirdSS-2.1.7-18553-x86_64.pkg.zip 13.0 Mb 64-bit package
9th Dec 2014 FirebirdSS-2.1.7-18553-lipo-x86_64.pkg.zip 13.0 Mb 64-bit Lipo package
MacOS X 32-bit Classic (PowerPC)
18th Mar 2011 FirebirdCS-2.1.4-18393-powerpc.pkg.zip 14.0 Mb 32-bit package
MacOS X 32-bit Superserver (PowerPC)
18th Mar 2011 FirebirdSS-2.1.4-18393-powerpc.pkg.zip 14.0 Mb 32-bit package
MacOS X 10.2+ Classic (PowerPC)
11th Sep 2009 FirebirdCS-2.1.3-18185-powerpc.pkg.zip 11.4 MB 64-bit package

Компонент TFDTransaction

Параметр
Назначение
Connection
Связь с компонентом FDConnection.
Options.AutoCommit
Управляет автоматическим стартом и завершением транзакции. Значение по умолчанию True.
Если значение этого свойства установлено в True, то FireDAC делает следующее:Запускается транзакция (если требуется) перед выполнением каждой SQL команды, и завершает транзакцию после выполнения SQL команды. Если команда выполнится успешно, то транзакция будет завершена как COMMIT, иначе — ROLLBACK.
Если приложение вызывает метод StartTransaction, то автоматическое управление транзакциями будет отключено, до тех пор, пока транзакция не завершится как Commit или Rollback.

В Firebird автоматическое управление транзакциями эмулируется самими компонентами FireDAC.
Options.AutoStart
Управляет автоматическим запуском транзакции. По умолчанию True.
Options.AutoStop
Управляет автоматическим завершением транзакции. По умолчанию True.
Options.DisconnectAction
Действие, которое будет выполнено при закрытии соединения, если транзакция активна. Значение по умолчанию xdCommit. Возможны следующие варианты:xdNone – ничего не будет сделано. Действие будет отдано на откуп СУБД;
xdCommit – подтверждение транзакции;
xdRollback – откат транзакции.

В других компонентах доступа значение по умолчанию для подобного свойства xdRollback. Поэтому необходимо выставлять это свойство вручную в то значение которое действительно требуется.
Options.EnableNested
Управляет вложенными транзакциями. Значение по умолчанию True.
Когда транзакция активна, то следующий вызов StartTransaction создаст вложенную транзакцию. FireDAC эмулирует вложенные транзакции, используя точки сохранения, если СУБД не поддерживает вложенные транзакции в явном виде. Чтобы отключить вложенные транзакции, установите EnableNested в False и следующий вызов StartTransaction вызовет исключение.
Firebird не поддерживает вложенные транзакции в явном виде.
Options.Isolation
Определяет уровень изолированности транзакции

Это самое важное свойство транзакции. Значение по умолчанию xiReadCommited

Возможны следующие варианты:xiUnspecified – используется уровень изоляции по умолчанию для вашей СУБД (в Firebird это SNAPSHOT, т.е. с параметрами read write concurrency wait);
xiDirtyRead – этого уровня изолированности в Firebird не существует поэтому вместо него будет использован READ COMMITED;
xiReadCommited – уровень изолированности READ COMMITED. В Firebird такая транзакция стартует с параметрами read write read_committed rec_version nowait;
xiRepeatableRead – этого уровня изолированности в Firebird не существует поэтому вместо него будет использован SNAPSHOT;
xiSnapshot – уровень изолированности SNAPSHOT. В Firebird такая транзакция стартует с параметрами read write concurrency wait;
xiSerializable – уровень изолированности SERIALIZABLE. На самом деле в Firebird не существует транзакции с данным уровнем изолированности, но он эмулируется запуском транзакции с параметрами read write consistency wait.

Options.Params
Специфичные для СУБД параметры транзакции. В настоящее время используется только для Firebird и Interbase. Возможные значения:read
write
read_committed
concurrency
consistency
wait
nowait
rec_version
no rec_version

Options.ReadOnly
Указывает является ли транзакция только для чтения. По умолчанию False. Если установлено в True, то любые изменения в рамках текущей транзакции невозможны, в Firebird в этом случае отсутствует значение read в параметрах транзакции.
Установка этого свойства в True позволяет СУБД оптимизировать использование ресурсов.

Замечание
Такую транзакцию нельзя использовать для отчётов (особенно если они используют несколько последовательных запросов), потому что транзакция с режимом изолированности READ COMMITED во время перечитывания данных будет видеть все новые committed-изменения.
Для отчётов рекомендуется использовать короткую транзакцию только для чтения с режимом изолированности SNAPSHOT (Options.Isolation = xiSnapshot и Options.ReadOnly= True). В данном примере работа с отчётами не рассматривается.

Удаление Firebird

Если вы решили, что программное обеспечение бесполезно для вас, его несложно удалить. Процесс выполняется в два шага:

  • Остановка работы софта. Переходим к СУБД, запускаем Firebird Server Control и жмём «Stop», подтверждаем действие.
  • Удаление софта. Процедура выполняется стандартным образом, как и в случае с любыми программами. Сделать это можно через Панель управления, где в разделе «Программы и компоненты» нужно найти в списке софта Firebird, выбрать его и нажать «Удалить», после чего подтвердить действие. Для Windows 10 есть альтернативный вариант удаления программ – Параметры (Win+I) – Система – Приложения и возможности. Здесь также ищем в списке софт и удаляем его с компьютера.

Firebird – одна из самых популярных и удобных систем управления базами данных. Софт будет превосходным вариантом решения для эффективной работы, являясь инструментом упорядочивания, обработки и хранения сведений. К тому же Firebird занимает совсем мало места на диске и не нагружает ресурсы.

Exec — Выполнение кода, консоль запросов и не только!

Незаменимый инструмент администратора БД и программиста:
Выполняйте произвольный код из режима 1С Предприятие; сохраняйте/загружайте часто используемые скрипты; выполняйте запросы с замером производительности запроса в целом и каждой из временных таблиц в частности, а также с просмотром содержимого временных таблиц; произвольным образом изменяйте любые объекты БД, редактируя даже не вынесенные на формы реквизиты и записывая изменения в режиме «ОбменДанными.Загрузка = Истина»; легко узнавайте ИД объектов БД; выполняйте прямые запросы к SQL с замером производительности и не только!

5 стартмани

Создание web приложения на PHP с иcпользованием Firebird и Laravel

Tutorial

Привет Хабр!
В прошлой статье я рассказывал о пакете для поддержки СУБД Firebird в фреймворке Laravel. На этот раз мы рассмотрим процесс создания web приложения с использованием СУБД Firebird на языке PHP с использованием Laravel.

Обзор драйверов для работы с Firebird

В PHP есть два драйвера для работы с СУБД Firebird:

  • Расширение Firebird/Interbase (ibase_ функции);
  • PDO драйвер для Firebird.

Обзор расширения Firebird/Interbase

Расширение Firebird/Interbase появилось раньше и является наиболее проверенным. Для установки расширения Firebird/Interbase в конфигурационном файле php.ini необходимо раскомментировать строку

или для UNIX подобных систем строку

Это расширение требует, чтобы у вас была установлена клиентская библиотека fbclient.dll/gds32.dll (для UNIX подобных систем fbclient.so) соответствующей разрядности.

Замечание для пользователей Win32/Win64
Для работы этого расширения системной переменной Windows PATH должны быть доступны DLL-файлы fbclient.dll или gds32.dll. Хотя копирование DLL-файлов из директории PHP в системную папку Windows также решает проблему (потому что системная директория по умолчанию находится в переменной PATH), это не рекомендуется. Этому расширению требуются следующие файлы в переменной PATH: fbclient.dll или gds32.dll.

Что это 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 является мощной СУБД и может работать с достаточно большими базами данных и с сотнями пользователей, её инсталлятор весит обычно не более 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 3.0

Из песочницы

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

В апреле 2016 года вышла новая версия СУБД Firebird под номером 3. Из нововведений, среди прочего, появилось и немало механизмов защиты хранимых и передаваемых данных. Там есть и защита канала передачи данных, есть управление пользователями, а также есть шифрование самой БД, которое реализовано как прозрачное шифрование на уровне страниц данных. Реализуется это всё с помощью написания специальных расширений для Firebird. Можно конечно и самому разобраться и написать эти расширения, но почему бы не взять существующие. Тем более, что для написания, как минимум, нужно понимать в криптографии, иметь на вооружении знания какого-нибудь криптографического пакета и разобраться с новым С++ Firebird API.

Установка Firebird — выбор типа сервера

Сервер Firebird SQL доступен в 3-х вариантах:

  • Firebird Super Server
  • Firebird Classic Server
  • Firebird Embedded

Firebird Super Server

Firebird Super Server — все клиентские подключения обслуживаются одним серверным процессом, имеется общий клиентский кеш. За счет этого достигается меньший расход ресурсов на обслуживание клиентов. Недостатком Firebird Super Server является отсутствие возможности задействовать несколько процессоров для работы Firebird сервера.

Firebird Classic Server

Firebird Classic Server — на каждое клиентское подключение создает отдельный серверный процесс. Архитектура Firebird Classic Server более надежна, т.к. сбой одного серверного процесса не вызывает отказ в обслуживании всех клиентов. Кроме того, Firebird Classic позволяет задействовать многопроцессорную архитектуру. При установке Firebird вы можете выбрать между версиями Firebird Super Server или Firebird Classic Server.

Firebird Embedded

Firebird Embedded Server — предназначен для встраиваемых баз данных. Состоит из одной dll — fbembed.dll, которая включает в себя клиент и сервер Firebird Super Server. Firebird Embedded не требует установки на клиентской рабочей станции. Достаточно просто скопировать fbembed.dll и еще несколько файлов клиенту на компьютер.

Недостаток Firebird Embedded — это невозможность одновременного подключения к одной БД нескольких клиентов. После успешного подключения Firebird Embedded блокирует файл базы данных для монопольного доступа.

Firebird Embedded Server распространяется отдельным дистрибутивом.

Скачать архив с Firebird Embedded.

Если затрудняетесь с выбором

Если вы не уверены в выборе типа установки Firebird, то используйте Firebird Super Server. В дальнейшем вы без труда сможете изменить архитектуру сервера.

Набор подсистем «Умные таблицы»

Данный набор подсистем – прикладная библиотека, призванная помочь программисту 1С быстрее решать ряд типовых задач бизнес-логики, таких как: ведение статусов объектов, отправка почтовых сообщений в определенное время, ведение произвольных таблиц с возможностью редактирования, сохранения и группировки, ориентированные на расчет бюджетных таблиц (план продаж, ретробонусы B2C, проценты по договорам B2B и договорные условия по КАМ), расчет коммерческой политики для бюджетных таблиц, исполнение произвольных алгоритмов с хранением кода в информационной базе, определение рабочих баз, хранение файлов во внешних СУБД (Postgre SQL, MS SQL и MongoDB) и выполнение произвольного кода после изменений ссылочного объекта вне транзакции изменения.

1 стартмани

Технология хранения и индексирования

Multi-Generational Architecture (MGA)

Firebird унаследовала архитектуру хранения Interbase. Для обеспечения ACID-свойств транзакций, механизм работы базы данных хранит различные версии каждой записи, изменённой активными пользователями в базе данных. После завершения транзакции, последняя версия каждой измененной записи помечается как окончательная. В случае отката транзакции, базы данных оставляет отметку на оригинальной версии записи, оставляя данные нетронутыми. В результате этого, количество записей на диск с использованием Firebird сильно уменьшено по сравнению с базами данных, использующими традиционную архитектуру журнала транзакций. Запись транзакций не препятствует чтению и наоборот, потому что каждый пользователь видит свою собственную версию базы данных. Компромисс заключается в том, время от времени требуется удаление старых версий записей и для освобождения дискового пространства.

Multi-Generational Architecture (архитектура с несколькими поколениями) обеспечивает одновременное выполнение операций OLTP и DSS / OLAP без задержек, которые вызывают механизмы блокировки, используемые в других продуктах.

Индексы

В Firebird все индексы базы данных ведут себя как хорошо настроенные «кластерные индексы», используемые другими архитектурами. Индексы Firebird не являются объектами двухфазной блокировки, в следствие чего логические операции «и» и «или» могут выполняться на промежуточных этапах с незначительной стоимостью, исключая необходимость выбора оптимизатором альтернативных индексов.

Может-ли база данных быть больше 2-х (4-х) гигабайт?

А: Да, может. Однако это зависит от многих факторов — от версии сервера, от версии операционной системы, и от типа файловой системы, на которой находится база данных. Понятно, что на FAT16 нельзя сделать логический диск больше 2-х гигабайт. Также известно что при копировании больших файлов с FAT32 на NTFS не копируется более 2-х гигабайт. На Linux ядро системы должно быть версии 2.4 для нормальной работы с файлами таких размеров.
Достаточно сказать, что все самые последние версии InterBase, Firebird и Yaffil могут работать с базой данных любого размера более 4-х гигабайт. Версия Interbase 5.x — повредит БД при переходе за границу в 4 гигабайта. Поэтому, если вы не уверены в версии ОС, файловой системе или версии сервера — используйте многофайловую БД, т.е. базу данных, разбитую на части. Максимальный размер базы данных для многофайловой БД равен 131 терабайт (это не ошибка, именно терабайт).

Заключение

В ходе данной работы были рассмотрены основные особенности базы данных Firebird, а также была произведена ее установка на ОС Ubuntu 17. Был продемонстрирован процесс создания простой базы данных с помощью isql.

На основе проделанной работы можно сделать вывод о том, что Firebird является довольно простой базой данных, работа с которой происходит через SQL, что добавляет удобства при переходе с любой другой базы данных, которая работает с языком SQL. В сравнении с MySQL, как с другой SQL базой данных с открытым исходным кодом, Firebird является менее удобной при работе и доставляет гораздо больше проблем при установке. Если для установки MySQL достаточно одного apt-get, до у Firebird пришлось потратить некоторое время для того, чтобы разобраться, почему база данных не хочет устанавливаться, либо не хочет работать после установки. Однако у Firebird есть некоторые плюсы, которые связаны с потребностью тех, кто им пользуется, например, эта база данных занимает меньше места в сравнении с MySQL и поддерживает большее количество платформ, что может оказаться для кого-то более нужным, чем некоторые функции, которые есть в MySQL, но отсутствуют в Firebird.

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

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

Adblock
detector