Назад | Перейти на главную страницу

«Ошибка аутентификации пароля для пользователя» для любого вновь созданного пользователя

Я могу успешно связаться с каждым пользователем, кроме одного. Я всегда получаю сообщение «Ошибка аутентификации пароля для пользователя» даже после изменения пароля. Это сработало до последнего перезапуска сервера. (может что-то испорчено?)

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

Я только что выполнил это:

postgres@server:~$ psql
psql (9.6.13)
Type "help" for help.

postgres=# CREATE USER test WITH PASSWORD 'test';
CREATE ROLE
postgres=# CREATE DATABASE test;
CREATE DATABASE
postgres=# GRANT ALL ON DATABASE test TO test;
GRANT
postgres=# \q
postgres@server:~$ psql -U test -d test -h localhost
Password for user test:
psql: FATAL:  password authentication failed for user "test"
FATAL:  password authentication failed for user "test"

Я почти уверен, что не ошибся здесь с паролем.

Мой pg_hba.conf содержит следующую строку:

host    all             all             127.0.0.1/32            md5

Я немного не понимаю, что мне делать, чтобы исправить эту проблему.

Я просто решил проблему. Иногда нужно просто записать и подумать пару секунд;)

Проблема заключалась в том, что ЧТО-ТО (не знаю, что до сих пор) в моей системе, похоже, запускает старую версию postgres при загрузке. Когда я использовал psql для создания пользователей, мне казалось, что я подключился через сокет домена unix к своему postgres 9.6.

Но когда я подключился с помощью «-h localhost», я подключился к экземпляру 9.4.

И очевидно, что этот старый экземпляр давно не использовался, поэтому у него было всего несколько старых пользователей.

Таким образом, фактическая ошибка заключалась не в неправильном пароле, а просто в отсутствии пользователя.

Теперь мне нужно отследить все, что запускает старый экземпляр postgres;)