1

Я установил postgres на моем Mac под управлением 10.6.8 и хотел бы сбросить пароль для пользователя postgres (я считаю, что это пароль суперпользователя), а затем перезапустить его.

Все указания, которые я нашел, не работают, потому что я думаю, что мое имя пользователя не распознается pg как обладающее правами на изменение пароля. (Я нахожусь на учетной записи администратора моего Mac)

Вот что я попробовал:

Larson-2:~ larson$ psql -U postgres
Password for user postgres: 
psql (9.0.4, server 9.1.2)
WARNING: psql version 9.0, server version 9.1.
         Some psql features might not work.
Type "help" for help.

postgres=# ALTER USER postgres with password 'mypassword'
postgres-# \q

и для перезагрузки я сделал:

Larson-2:~ larson$ su postgres -c 'pg_ctl -D /opt/local/var/db/postgresql84/defaultdb/ restart
> 

Что не сработало, так как пароль остался таким же, как и раньше. Может ли кто-нибудь дать указания, как сделать это и удостовериться, что это признано PG?

Обновить

Я пошел дальше и отредактировал файл pg_hba.conf расположенный в /Library/PostgreSQL/9.1/data и установил параметры следующим образом:

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
# IPv6 local connections:
host    all             all             ::1/128                 trust

Однако, как и раньше, пароль остался прежним после того, как я изменил его. Я не уверен, какие дальнейшие шаги я могу предпринять отсюда.

1 ответ1

3

Вам нужен "ЗАПИСАННЫЙ ПАРОЛЬ",

ALTER USER postgres WITH ENCRYPTED PASSWORD 'password';

сейчас в pg_hba.conf

local   all             all                                     md5
host    all             all             127.0.0.1/32            md5

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .