Postgresql: ошибка аутентификации пароля для пользователя " postgres"

Я установил PostgreSQL 8.4, Postgres client и Pgadmin 3. Ошибка проверки подлинности пользователя "postgres" для консольного клиента и Pgadmin. Я ввел пользователя как " postgres "и пароль" postgres", потому что он работал раньше. Но теперь аутентификация не удалась. Я делал это раньше пару раз без этой проблемы. Что мне делать? И что происходит?

psql -U postgres -h localhost -W
Password for user postgres: 
psql: FATAL:  password authentication failed for user "postgres"
FATAL:  password authentication failed for user "postgres"

12 ответов


если я правильно помню нет DB пароль установлен на Ubuntu по умолчанию. Это значит, что вы можете войти в эту учетную запись только с помощью postgres пользователей ОС


ответ персонала правильный, но если вы хотите дополнительно автоматизировать может сделать:

$ sudo -u postgres psql -c "ALTER USER postgres PASSWORD 'postgres';"

готово! Вы сохранили User = postgres и password = postgres.

Если у вас нет пароля для пользователя postgres ubuntu do:

$ sudo passwd postgres


Это было неприятно, большинство приведенных выше ответов верны, но они не упоминают, что вы должны перезапустить службу базы данных перед изменениями в pg_hba.файл conf будет влиять.

Итак, если вы сделаете что-то вроде выше

местные все postgres ident

затем перезагрузка как root ( на centos его что-то вроде службы Service postgresql-9.2 restart ) сейчас вы должны иметь доступ к БД как пользователь postgres

$psql в psql в (9.2.4) Введите "help" для справки.

postgres=#

надеюсь, что это добавляет информацию для новых пользователей postgres


редактировать pg_hba.файл conf, например, с sudo emacs /etc/postgresql/9.3/main/pg_hba.conf

измените все методы аутентификации на trust. Измените пароль Unix для пользователя "postgres". Перезапустите Сервер. Войти с psql -h localhost -U postgres и используйте только что установленный пароль Unix. Если он работает, вы можете повторно установить pg_hba.файл conf по умолчанию.


Если вы пытаетесь войти в Postgres shell как пользователь postgres, вы можете использовать следующие команды.

переключиться на пользователя postgres

# su - postgres

войдите в psql

# psql

надеюсь, что это поможет


попробуйте не использовать параметр-W и оставьте пароль пустым. Иногда пользователь создается без пароля.

Если это не работает, сбросьте пароль. Есть несколько способов сделать это, но это работает на многих системах:

$ su root
$ su postgres
$ psql -h localhost
> ALTER USER postgres with password 'YourNewPassword';

Как правило: ВЫ НИКОГДА НЕ ДОЛЖНЫ УСТАНАВЛИВАТЬ ПАРОЛЬ ДЛЯ ПОЛЬЗОВАТЕЛЯ POSTGRES.

Если вам нужен доступ суперпользователя из pgAdmin, сделайте другой суперпользователь. Таким образом, если учетные данные для этого суперпользователя скомпрометированы, вы всегда можете ssh в фактический хост базы данных и вручную удалить суперпользователя с помощью

sudo -u postgres -c "DROP ROLE superuser;"

Я просто хотел добавить, что вы также должны проверить, истек ли срок действия вашего пароля.

посмотреть ошибка аутентификации пароля Postgres для сведения.


вот некоторые комбинации, которые я пытался войти:

# login via user foo
psql -Ufoo -h localhost

sudo -u postgres psql postgres

# user foo login to postgres db
psql -Ufoo -h localhost -d postgres

У меня была похожая проблема. Ubuntu оставил мне вход в консоль с любым паролем для суперпользователя. За исключением случаев, когда я подключался к-h localhost в команде строки psql.

Я тоже заметил, что" localhost:8080/MyJSPSiteLogIn "- показал: Fatal: ошибка аутентификации с пользователем"user".

файл pg_hba.conf был ОК.

Я отметил, что две версии postgres работают в одной службе.

решено-удаление версии inutil.


для тех, кто использует его в первый раз и не имеет никакой информации о том, что пароль, они могут выполнить следующие шаги(предполагая, что вы находитесь на ubuntu):

  1. открыть файл файл pg_hba.conf на /etc/postgresql/9.x/main

     sudo vi pg_hba.conf 
    

    2.измените ниже строку

     local   all             postgres                                peer
    

    to

     local   all             postgres                                trust
    
  2. перезагрузить сервер

      sudo service postgresql restart
    
  3. наконец, вы можете войти в систему без пароля как показано на рисункеFinally you can login without need of a password as shown in the figure

Ref здесь для получения дополнительной информации


Я надеюсь, что это поможет вам в короткие сроки. Вы можете изменить пароль postgres sql с помощью команды ниже.

команда

судо -ю и Postgres psql в

и далее вы можете обновить пароль

команда

изменить пароль пользователя postgres "YOUR_NEW_PASSWORD";