Как восстановить(сбросить) root(postgres) пароль для PostrgeSQL в Debian(Ubuntu)

Случалось ли вам забывать root-пароль от PostgreSQL-сервера? Если это произошло, вам необходимо сделать следующее(для Debian или Ubuntu, другие дистрибутивы Linux отличаются разве что расположением конфигов и скриптов запуска)

1. Прописать в конфиге возможность авторизоваться «доверенно», то есть с одним только логином , без подтверждения его паролем или чем-то ещё. Для этого меняем в файле pg_hba.conf (у меня он лежит в /etc/postgresql/8.4/main/)  строчку

local   all         postgres                          password

или

local   all         postgres                          ident

(что будет), на

local   all         postgres                          trust

2. Перезапускаем PostgreSQL-сервер

/etc/init.d/postgresql restart

3. Выполняем SQL-команду на смену пароля (из под root)

# psql -U postgres template1 -c "alter user postgres with password 'newpassword';"

4. Меняем в pg_hba.conf

local   all         postgres                          trust

на

local   all         postgres                          password

5. Перезапускаем PostgreSQL-сервер

/etc/init.d/postgresql restart

Добавить комментарий