В сообщении от 1173250348 секунд после начала Эпохи Alexander Esmont написал(а):
> > Еще раз :) Там написано:
> > # su -c psql postgres
> > ^
> > обратите внимание, что означает от рута. Если su выполняете от рута, он
> > не спрашивает пароль.
> Точно, не спрашивает! Но и не работает... :-)
> [root@alexx root]# su -c psql postgres
> su: exec failed
Опа... Как такое возможно?
# su -c skdfjlsdkfj postgres
bash: skdfjlsdkfj: command not found
# su -c psql skdfjldskfj
su: user skdfjldskfj does not exist
#
У Вас явно какой-то неправильный su.
> [root@alexx root]# psql --help
> This is psql 7.4.3, the PostgreSQL interactive terminal.
>
> Usage:
> psql [OPTIONS]... [DBNAME [USERNAME]]
> .
> .
> .
> -U NAME database user name (default: "root")
> Насколько я понял по справке на psql то первым парамметров идет именно имя
> БД, а не имя пользователя.
Точно. Но команда su получает первым параметром именно имя пользователя.
> Для запуска psql надо указать БД к какой
> подключаться,а потом уже имя пользователя.
А можно и не указывать ни БД, ни имя пользователя.
> В моем случае (на страрте присутствуют только БД template1 и template0, но
> template0 не принимает подключений) команда трансформируется в
>
> $ su -c "psql template1 postgres"
Ради бога. Если оно у Вас работает...
> Ладно, ладно - я и не настаиваю... :) Может просто пояснения действий
> дать? Мне же вот помогло - на этом этапе...
Это для каждой версии PostgreSQL давать отдельные разъяснения? А может
еще и для каждого конкретного дистрибутива?
> > Что именно подправить? Сказать что требуется 8.1? Если будет точно
> > известно что требуется 8.1, я подправлю. А пока по имеющимся у меня
> > данным я полагаю что подойдет любая версия >= 7.3.16.
> Протестовать не буду, т.к. пока не до конца разобрался и настроил.
> А какие данные нужны?
Доказательства :) Может быть оно у Вас работает "не так" совсем не
из-за номера версии. Может это у вас настройки такие. А может
и разработчики дистрибутива что-то нахимичили в исходниках СУБД.
> Но всеже если указывается что версия >= 7.3.16, а в наборе команд
> CREATE ROLE отсутствует, то может стоит подправить?
Использование нового синтаксиса - намек на то что нужно использовать
свежие версии ПО :)
> Кстати, в строке
>
> postgres=# GRANT ALL PRIVILEGES ON DATABASE yourDBUser TO yourUser;
>
> думаю стоит исправить yourDBUser на yourDBName, ведь права передаются на
> БД созданую двумя строками выше.
Да, а тут опечатка. :) Исправил. Спасибо.
> > Какое время? 30 милисекунд? 30 секунд? 30 минут? 30 часов?
> 20-30 минут стоит, потом возвращает управление shell-у.
Значит по какой-то непонятной причине какие-то непонятные процессы
продолжались :)