Предлагаю в интернетах развести инструкции:
* как завести postgres (на разных платформах). Рекомендации типа
"погугли" неконструктивны. Нужна краткая понятная дока на русском.
* как завести базу qbalance руками - кратко, пошагово, на русском.
Вручную можно завести так:
Сначала удаляем то, что осталось от неудачной загрузки БД. В консоли
пишем:
$>dropdb -U postgres enterprise // так называлась БД раньше
$>dropuser -U postgres sa // удалим пользователей
$>dropuser -U postgres test
$>dropuser -U postgres seller
$>dropuser -U postgres bookkeper
Создаем БД заново:
$>createdb -U postgres qbalance // так теперь будет называться БД
$>psql -U postgres qbalance < ./src/initdb0.sql // скрипт
инициализации пользователей в исходниках
$>psql -U postgres qbalance < ./src/initdb1.sql // скрипт с
бакапом БД
Версия - свежее некуда - прямо из гита.
> Используйте версию PostgreSQL < 9.0, но выше 8.
К сожалению - в Fedora 16 сделать даунгрейд постгреса _невозможно_.
Даже если собрать 8-й руками - не поставить как системный - всё поломается.
Хуже - в Fedora 15 тоже (внезапно) postgres 9. А на сервере - postgres 8.4.
Может - здесь собачка порылась?
Я серьезно не смогу изменить посгрес на 8 - ни на домашней (Fedora 16)
ни на рабочей (Fedora 15) машине.
А что - обеспечить совместимость с 9 - очень трудно?
Должно работать и под 9. А вручную инициализировать БД не получается?
bash-4.2$ dropdb -U postgres -h host002 enterprise
bash-4.2$ dropuser -U postgres -h host002 sa
dropuser: removal of role "sa" failed: ERROR: role "sa" does not exist
bash-4.2$ dropuser -U postgres -h host002 test
dropuser: removal of role "test" failed: ERROR: role "test" does not exist
bash-4.2$ dropuser -U postgres -h host002 seller
dropuser: removal of role "seller" failed: ERROR: role "seller" does not exist
bash-4.2$ dropuser -U postgres -h host002 bookeeper
dropuser: removal of role "bookeeper" failed: ERROR: role "bookeeper"
does not exist
bash-4.2$ createdb -U postgres -h host002 qbalance
bash-4.2$ pwd; ls -1 *.sql
/mnt/shares/home/eugene/Version/GIT/qbalance/src
initdb0.sql
initdb1.sql
bash-4.2$ psql -U postgres -h host002 qbalance < ./initdb0.sql
ERROR: role "test" does not exist
CREATE ROLE
ERROR: role "sa" does not exist
CREATE ROLE
ERROR: role "bookkeeper" does not exist
CREATE ROLE
ERROR: role "seller" does not exist
CREATE ROLE
CREATE LANGUAGE
29 декабря 2011 г. 15:39 пользователь Vladimir
<Morozov...@mail.ru> написал:
Задал вопрос об этой ошибке на форуме http://www.sql.ru/forum/actualthread.aspx?tid=907257.
Похоже, что мне нужно сделать скрипт initdb1.sql на более старом
сервере. Попробуйте убрать эту строку в скрипте.
Завестись-то оно завелось - только с руганю:
Deleting...
dropuser: removal of role "bookkeper" failed: ERROR: role "bookkeper"
does not exist
Creating...
ERROR: role "test" does not exist
ERROR: role "sa" does not exist
ERROR: role "seller" does not exist
Дальше стартует, работает.
* не запоминает настройки соединения. В смысле - при каждом старте
надо писать имя соединения и хост.
* Нет тултипов. В смысле - открываешь, скажем, Справочники - там 6
кнопок - а кто есть кто - хез... Что попало нажимать страшно.
* Настройки - потыкать палочкой - крестик (видимо - закрыть
настройки?) - падает всё приложение (сегфаулт).
Пока - всё.
> * Нет тултипов. В смысле - открываешь, скажем, Справочники - там 6
> кнопок - а кто есть кто - хез... Что попало нажимать страшно.
Да, согласен, нужно дорабатывать
> * Настройки - потыкать палочкой - крестик (видимо - закрыть
> настройки?) - падает всё приложение (сегфаулт).
> Пока - всё.
Дальше нужно создавать багрепорт. Но пока еще рано, т.к. программа еще
в стадии написания.