Firebird FreeBSD

Много всякой всячены по написанно на просторах инета что есть проблеммы с установкой Firebird на FreeBSD

Ну не знаю я что там такого чложного и непонятного

Все элементарно и просто существуют даже два варианта

1)Заходим в каталог портов под рутом

cd /usr/ports/databases/firebird25-server

и редактируем файл Makefile

находим строчку

${ECHO_MSG} "==> Please do not build ${PORTNAME} as 'root' because this may cause conflicts with SysV semaphores of running services."; exit 1; fi

И заменить exit на echo или вообще убрать его

Скампилить и установить

make WITHOUT_IPC_CLEANUP=yes install

после чего желательно подчистить

make clean

После проделанной операции осталось только прописать

echo firebird_enable="YES" >> /etc/rc.conf

/usr/local/etc/rc.d/firebird start

Вот и готово

2) Как пишут в инете

make fetch (as root)
make extract (root)
make (user)
make install (root)

Еще, наверное, можно на work права 777 дать, что-ли?

Другими словами:

компилировать (make) порт нужно под обычным ПОЛЬЗОВАТЕЛЕМ, а устанавливать (make install) под root. И еще – в папках с портами firebird-server и firebird-client (ставится вместе с серверной частью) нужно создать папки work (под root) и назначить им соответствующие права для пользователя, под которым будет происходить компиляция.

проверяем:

top

netstat -an

т.д.

Еще писатели пишут:

>Далее обязательно вбить строчку в /etc/inetd.conf (В одну строку и не пробелами, а табиками ;))
gds_db stream tcp nowait firebird /usr/local/sbin/fb_inet_server fb_inet_server

И зачем это надо так и остается завесой тайн

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


# gsec -user SYSDBA -pass masterkey
# GSEC> modify SYSDBA -pw newpassword
# GSEC> quit

Кладем базы (*.GDB, *.FDB), делаем владельцем файла firebird, группу firebird. Даем пользователю и группе права на чтение и запись:
chown -R firebird:firebird /.../databases
chmod -R 770 /.../databases
Вот вроде и все. Пробуем прицепиться к базе с помощью IBExpert.

И в чем сложность ???

И еще немного полезного

logs and security2.fdb seems to be in /var/db/firebird.

# /usr/local/bin/isql-fb

To create a new database:

SQL> create database "tmp/first_database.fdb;
SQL> connect "/tmp/first_database.fdb" ;
Commit current transaction (y/n)?y
Committing.
Database: "/tmp/first_database.fdb"
SQL>

If you want to create a simple table then insert 1-2 rows and select from it; here is one example:

SQL> CREATE TABLE TEST (ID INT NOT NULL PRIMARY KEY, NAME VARCHAR(20));
SQL> show tables;
TEST
SQL> INSERT INTO TEST VALUES (1, 'John');
SQL> INSERT INTO TEST VALUES (2, 'Joe');
SQL> select * from test;
ID NAME
============ ====================
1 John
2 Joe

To quit the isql-fb console, type quit:

SQL> quit
CON>;

For a good open source GUI admin tool you might check the flamerobin administration tool included in ports repository; it can be installed by a simple:

# cd /usr/ports/databases/flamerobin/ && make install clean

To use firebird with php, you will need the php5 driver:

# cd /usr/ports/databases/php5-interbase/ && make install clean

You can choose to compile php with apache support (I have chosen cli, cgi , and apache support); check it if is enabled with:

# /usr/local/bin/php -m

--------------------------------------------------

Если ваш свежеустановленный из портов FireBird 2.5 ругается

> CHARACTER SET WIN1251 is not installed

то нужно сделать так:

ln -s /usr/local/etc/firebird/fbintl.conf /usr/local/libexec/firebird/intl/fbintl.conf

Это все потому что fbintl ищет свой конфиг в своем каталоге а его там нет :-)

Так-же чтобы работал php5-interbase - lang/php5 нужно собирать с KNOB-ом LINKTHR - т.к. firebird25-client threadsafe, и тупо зависает если php5 не слинкован с libthr.so

Обновлено: 12.03.2015