Использование Firebird SQL
Содержание
Использование Firebird SQL#
Firebird SQL - это база данных (БД) с возможностью сохранения данных измерений, журналов и структурированных конфигураций.
Базы данных в формате Firebird используются следующими программами:
Утилита |
Название |
Назначение |
---|---|---|
|
Сохранение в базе данных журналов и конфигураций. |
|
|
Просмотр данных Черного ящика. |
|
|
Сохранение данных измерений. |
Эта БД может использоваться в двух режимах:
Сохранение данных измерений.
В этом режиме структура базы содержит только данные о значениях переменных.
Если в базе планируется сохранять только значения переменных, то необходимо использовать шаблон запросов БД: Сервер Interbase или аналог (раздельные БД значений, хранение данных).
Сохранение данных измерений, конфигураций и журналов.
В этом режиме структура базы данные о значениях переменных, конфигурацию и текст журналов в форме. которые обеспечивают возможность использования этих данных в стороннем ПО.
В этом режиме необходимо использовать шаблон запросов БД: Сервер Interbase или аналог (единая БД значений, экспорт конфигураций).
Для использования в системе РТС БД Firebird необходимо:
Установить
Firebird
сервер, настроить сервер.
Предупреждение
Данное описание составлено с ориентацией на версию Firebird 2.5.
Создать базу данных, необходимую для использования в системе РТС.
Установить драйвер
ODBC
для доступа к БДFirebird SQL
.Настроить
алиас BDE
для использования БДFirebird SQL
.Внести изменения в форматы шаблонов, использующихся сервером РТС для работы с БД в формате
FB
.
Используемые утилиты#
На сайте IngortechSCADA можно скачать все необходимые утилиты.
Для использования БД Firebird
понадобятся:
Драйвер
ODBC
дляFirebird
.Установочный пакет
Firebird 2.5
.Так же, для манипуляций БД может быть использована графическая утилита управления БД Firebird
flamerobin
.
Установка и настройка#
Для установки базы данных Firebird
необходимо произвести следующие действия:
Установить Firebird
в каталог C:\FB
.

Установить Firebird
в виде «SuperServer».

Настроить окружение для сервера, для этого добавить в переменную PATH
путь для утилит
C:\FB\bin
.

Создать каталоги:
C:\RTSBaseFB
- будет использоваться для хранения активной базы.
C:\RTSArchive
- будет использоваться для хранения архивной базы.
Настройка сервера Firebird SQL#
Для выполнения команд управления БД необходимо использовать какую-либо утилиту командной строки, потому что утилиты управления выполнены в виде консольных утилит Windows
.
Подсказка
Удобнее всего управление БД осуществлять используя менеджер файлов типа FAR
, который можно скачать по адресу http://www.farmanager.com/, или аналогов.
С помощью любого текстового редактора необходимо отредактировать настройки
Firebird
, которые записаны в файлеC:\FB\firebird.conf
.
Установить:
- DatabaseAccess = Full
Разрешить доступ ко всем БД на машине.
- Authentication = mixed
Разрешить использовать учетную запись текущего пользователя для доступа к БД.
Сменить пароль пользователя
SYSDBA
наsys
gsec -user sysdba -pass masterkey -mo sysdba -pw sys
Разрешить текущему пользователю (администратору) автоматически логиниться как администратор БД:
gsec -user sysdba -pass sys -mapping set
Создать пользователей системы.
Пользователь, который будет владеть базой данных и писать в нее данные:
gsec.exe -add rts -pw rts
Пользователь, который будет иметь право читать данные из БД без возможности их изменения:
gsec.exe -add inspector -pw inspector
Установить алиас:
Отредактировать файл
C:\FB\aliases.conf
:
rts = C:\RTSBaseFB\RTS.FDB
rts2 = C:\RTSBaseFB\RTS2.FDB
rtsArch = C:\RTSArchive\RTS.FDB
Создание пустой базы данных для использования в системе РТ#
Для создания БД можно воспользоваться скриптом Firebird_Initialize.sql
или скачать готовую БД с сайта IngortechSCADA.
Для создания новой БД скриптом необходимо выполнить скрипт инициализации БД:
Скопировать скрипт
C:\RTS\SQLExport\Firebird_Initialize.sql
в каталогC:\RTSBaseFB
Находясь в каталоге
C:\RTSBaseFB
выполнить скрипт командой:
isql.exe -s 3 –ch WIN1251 -b -i "Firebird_Initialize.sql"
В результате выполнения на экран будет выведено:
C:\RTSBaseFB>isql.exe -s 3 –ch WIN1251 -b -i "Firebird_Initialize.sql"
Use CONNECT or CREATE DATABASE to specify a database
В случае успешного выполнения команды будет создана новая БД C:\RTSBaseFB\RTS.FDB
.
Предупреждение
В случае возникновения каких либо ошибок в выводе на экран будет содержаться сообщение об ошибке.
Пример:
C:\RTSBaseFB>isql.exe -s 3 –ch WIN1251 -b -i "Firebird_Initialize.sql"
Use CONNECT or CREATE DATABASE to specify a database
Statement failed, SQLSTATE = 42000
Dynamic SQL Error
-SQL error code = -104
-Token unknown - line 11, column 1 -)
At line 533 in file Firebird_Initialize.sql
В этом случае необходимо скопировать полученный текст и выслать его разработчику вместе с используемым скриптом Firebird_Initialize.sql
.
Подготовка сервера Firebird SQL к монопольному использованию#
В случае, если необходимо обеспечить повышенную защиту доступа к данным сервера FB или если конфигурируется замкнутая система типа «черный ящик» необходимо внести дополнительные ограничения в конфигурационные файлы.
Предупреждение
Эти настройки рекомендуется производить только в том случае, если вы полностью уверены в результате их воздействия.
Для стандартной эксплуатации в режиме шахты или тестового использования системы РТС эти настройки производить не нужно.
Редактирование настроек FB осуществляется в файле C:\FB\firebird.conf
.
В указанном файле необходимо установить:
- DatabaseAccess = None
Запрет ссылок на какие-либо базы данных, кроме перечисленных в алиасах.
- Authentication = native
Запрет использования текущего пользователя системы для логина к БД.
Запретить текущему пользователю (администратору) автоматически логиниться как администратор БД:
gsec -user sysdba -pass sys -mapping drop
Создание алиаса ODBC#
Для создания алиаса ODBC
необходимо установить драйвер ODBC
запустив установщик Firebird_ODBC_2.0.0.151_Win32.exe

В стандартном диалоге настройки доступа к данным ODBC
системы создать новый алиас доступа к используемой БД с именем FB
.
В качестве имени пользователя и пароля необходимо указать rts
.

Создание алиаса BDE#
С помощью утилиты dbexplor
создать алиас BDE
для доступа к БД.

При создании алиаса необходимо использовать драйвер доступа Firebird/InterBase(r) driver
.

Если при создании алиаса BDE
в списке доступных драйверов нет нужного драйвера, то необходимо обновить драйвера BDE
.
Подсказка
Полный комплект драйверов можно установить с помощью пакета установки BDE, который можно скачать с сайта IngortechSCADA.
Настройка сервера РТС#
Для корректной работы сервера необходимо внести следующие изменения в настройки сервера системы РТС:
Выбрать алиас, сконфигурированный для доступа к БД FB.
Указать имя и пароль пользователя для доступа к БД в значение
rts
.Выбрать шаблон доступа к БД Сервер Interbase или аналог с единой БД значений и хранением конфигурации.
Установить настройку Размер кеша SQL запросов в величину «0».

Использование утилит доступа к базе данных#
В системе РТС существует две утилиты, которые организуют специальный доступ к БД:
|
Утилита предназначенная для сохранения конфигурации в БД. |
|
Утилита предназначенная для просмотра значений из долговременного архива. |
Предупреждение
Символы ХХХ в названии обозначают тип используемой БД.
Для работы с БД Firebird SQL
предназначены утилиты ExportIB.exe
и rtSQLInspectorFB.exe
соответственно.
Фактически, для каждой из утилит может быть использовано много различных программ, каждая из которых предназначена для использования с какой-либо специфической БД.
Настройка ExportIB.exe#
Для работы утилиты ExportIB.exe
с БД необходимо указать следующие настройки:
Указать имя алиаса для доступа к БД в значение
FB
.Указать имя и пароль пользователя в значение
rts
.

Настройка rtSQLInspectorFB.exe#
Для работы утилиты rtSQLInspectorFB.exe
с БД необходимо указать следующие настройки:
Указать имя алиаса для доступа к БД в значение
FB
.Указать имя и пароль пользователя в значение
inspector
.
