все что связано с моей работой
Главная » Unix » Firebird в Ubuntu 10.04

Firebird в Ubuntu 10.04

Долго, очень долго ставил сабж. Постоянно были ошибки скриптов post-install. Ни одна из найденных статей по установке не помогла. Маленькая оговорка Ubuntu использую «как винду», т.е. максимум действий из гуи. Но тут как раз тот случай когда нужен шелл, как ни крути, какой бы не был красивый десктоп на линухе, а всемогущий шелл так и остается панацеей почти от всех бед :)

Итак,

  1. post-install от пакета firebird2.1-server-common создает пользователя и группу firebird, засада в том, что скрипт не проверяет есть пользователь или нет, а сразу пытаться его создать. Если пользователь существует adduser вполне предсказуемо возвращает 1 (код ошибки) что собственно является для скрипта поводом к аварийному останову.
    sudo deluser firebird

     
    проблему решает.

  2. вторая засада все в том же adduser, только теперь он ругался на /var/lib/firebird (библиотеки в /var разделе !!! это же линукс :D ) удаление каталога помогло.
  3. adduser: Внимание: данный домашний каталог `/var/lib/firebird' не принадлежит пользователю, которого вы сейчас создаете

     это третья засада, хоть все и устанавливается с этим предупреждением, но грабли вылезают позже в таком виде:

    kos@kos-desktop:/usr/share/doc/firebird2.1-examples/examples/empbuild$ isql-fb
    Use CONNECT or CREATE DATABASE to specify a database
    SQL> connect "/var/lib/firebird/2.1/data/employee.fbd" user 'SYSDBA' password 'masterkey';
    Statement failed, SQLCODE = -902
    cannot attach to password database

    смена прав помогает, «подлый» каталог оказывается /var/firebird, внутри все нормально было.

  4. кстати в строке подключения в имени базы надо обязательно(!!!) указывать протокол и адрес машины. Для Ubuntu это TCP и машина соответственно localhost. Вот так примерно должно выглядеть:
    kos@kos-desktop:/usr/share/doc/firebird2.1-examples/examples/empbuild$ isql-fb
    Use CONNECT or CREATE DATABASE to specify a database
    SQL> connect "localhost:employee" user sysdba password 'masterkey';
    Database:  "localhost:employee", User: sysdba
    SQL> show tables;
    COUNTRY                                CUSTOMER
    DEPARTMENT                             EMPLOYEE
    EMPLOYEE_PROJECT                       JOB
    PROJECT                                PROJ_DEPT_BUDGET
    SALARY_HISTORY                         SALES
    
    SQL> exit;
    
  5. еще в довесок, во время установок-переустановок для выявления ошибок была добавлена строка в /etc/initd.conf, также ругань была когда с супера решил класик попробовать.

Вывод: как только начинаешь думать что линь опосел и стал клоном винды, как сразу приходиться лезьть в шелл :)

Полезное:

  • вообще все команды apt
    sudo dpkg-reconfigure firebird2.1-super
    sudo apt-get update
    apt-cache search firebird2.1-*
  • установка примеров
    cd /usr/share/doc/firebird2.1-examples/examples/empbuild/
    sudo gunzip employee.fdb.gz
    sudo chown firebird.firebird employee.fdb
    sudo mv employee.fdb /var/lib/firebird/2.1/data/
  • статья откуда черпалось «вдохновение» и знания: https://help.ubuntu.com/community/Firebird2.1

Комментариев нет

No comments yet.

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.