Задача: установить PostgreSQL в Windows без использования инсталлятора.1. Распаковываем архив c бинарниками (можно взять из готовой установки или с сайта http://www.enterprisedb.com/products-services-training/pgbin... ) в C:\PostgreSQL
2. Создаём каталог C:\PostgreSQL\data - там будут лежать данные базы
3. Создаем пользователя postgres с паролем pwd. В командной строке вводим:
net user postgres pwd /add
4. Устанавливаем ему неограниченный срок действия пароля:
WMIC UserAccount WHERE Name="postgres" Set PasswordExpires=FALSE
5. Даем право входа в качестве службы утилитой ntrights из Windows Resource Kit Tools:
ntrights +r SeServiceLogonRight -u postgres
6. Даем все права на каталог C:\PostgreSQL:
cacls C:\PostgreSQL /E /G postgres:F
7. Создаем в C:\PostgreSQL\bin текстовый файл с именем pf, содержащий пароль pwd
8. В C:\PostgreSQL\bin выполняем команду по инициализации базы:
initdb -U postgres --pwfile=pf -A md5 -E UTF8 --locale=Russian_Russia -D C:\PostgreSQL\data
9. Регистрируем сервис:
pg_ctl register -N PostgreSQL -U postgres -P pwd -D C:\PostgreSQL\data -S auto
10. Запускаем службу:
sc start PostgreSQL
Для удобства прописываем путь к бинарным файлам PostgreSQL в PATH:
pathman /as c:\PostgreSQL\bin
URL:
Обсуждается: http://www.opennet.me/tips/info/2633.shtml
Уточнил бы хоть, для каких это версий :)
Проверено для 9.1.1
под win7
Только что таким образом поставил PostgreSQL 9.1.2 под XP. К команде cacls надо добавить /T, т.е:
cacls C:\PostgreSQL /E /T /G postgres:F
Респект, very powerful command line
добавил бы для полноты картины:
2. mkdir C:\PostgreSQL\data
7. echo pwd > C:\PostgreSQL\bin\pf
Угу. Задача в том числе сделать свой инсталлятор, для распространения postgres в составе своих продуктов, т.е. чтобы само скриптом как надо ставилось.
пару поправок:
- изымаем право интерактивного входа в систему, чтобы пользователь postgres не парил на экране входа в систему:
ntrights +r SeDenyInteractiveLogonRight -u postgres
- вместо echo pwd > C:\PostgreSQL\bin\pf надо echo pwd> C:\PostgreSQL\bin\pf иначе в файле лишний пробел и потом заморочки
А зачем это? Проще не на Венду Слона ставить, а поставить на комп нормальную ОС.
Проще запустить стандартный инсталлятор и не делать переборку двигателя через выхлопную трубу.
А что делать, если он обломался с невнятной диагностикой?
Чем Венда не нормальная ОС?"Настоящий летчик способен с легкостью летать на всем, что летает, и способен летать с некоторым трудом на том, что, вообще говоря, летать не может."
А если у Вас, сударь, что-то не летает - так это не в ОС проблема )
а что за такая утилита "pathman" - её нет ни в XP ни в семерке.
SET PATH вроде работает из батников ...
Скажите пожалуйста, почему у меня пункт 5 выдает ошибку:
granting seservicelogonrights to postgres ...failed error AddUserRightToAccount Error
что я сделал не так, и главное как это исправить