Postgresql: uwierzytelnianie hasłem nie powiodło się dla użytkownika " postgres"
Zainstalowałem PostgreSQL 8.4, Postgres client i Pgadmin 3. Uwierzytelnianie nie powiodło się dla użytkownika "postgres" zarówno dla klienta konsoli, jak i Pgadmin. Wpisałem użytkownika jako "postgres" i hasło "postgres", ponieważ działało wcześniej. Ale teraz uwierzytelnianie nie powiodło się. Zrobiłem to wcześniej kilka razy bez tego problemu. Co mam zrobić? I co się dzieje?
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 answers
O ile dobrze pamiętam użytkownik postgres
nie ma domyślnie ustawionego hasła DB na Ubuntu. Oznacza to, że możesz zalogować się na to konto tylko za pomocą postgres
konto użytkownika OS.
Zakładając, że masz root
dostęp na skrzynce możesz zrobić:
sudo -u postgres psql
Jeśli to nie powiedzie się z błędem database "postgres" does not exists
, to najprawdopodobniej nie jesteś na serwerze Ubuntu lub Debiana :-) w tym przypadku wystarczy dodać template1
do polecenia:
sudo -u postgres psql template1
Jeśli któraś z tych komend zawiedzie z błąd psql: FATAL: password authentication failed for user "postgres"
następnie sprawdź plik /etc/postgresql/8.4/main/pg_hba.conf
: musi być taka linia jako pierwsza linia Bez komentarza:
local all postgres ident
Dla nowszych wersji PostgreSQL ident
faktycznie może być peer
. To też w porządku.
Wewnątrz powłoki psql
możesz dać użytkownikowi DB postgres
hasło:
ALTER USER postgres PASSWORD 'newPassword';
Możesz zostawić psql
powłokę wpisując CtrlD lub poleceniem \q
.
Teraz powinieneś być w stanie podać pgAdmin poprawne hasło dla DB superużytkownik i będzie też szczęśliwy. :-)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-11-14 05:07:47
Odpowiedź personelu jest poprawna, ale jeśli chcesz dalej zautomatyzować można zrobić:
$ sudo -u postgres psql -c "ALTER USER postgres PASSWORD 'postgres';"
Zrobione! Zapisałeś User = postgres i password = postgres.
Jeśli nie masz hasła dla użytkownika postgres ubuntu do:
$ sudo passwd postgres
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-12-24 19:33:07
To było frustrujące, większość powyższych odpowiedzi jest poprawna, ale nie wspominają, że musisz ponownie uruchomić usługę bazy danych przed zmianami w pg_hba.plik conf będzie miał wpływ.
Więc jeśli zrobisz coś takiego jak wyżej
Local all Postgres ident
Następnie restart jako root (na centos jego coś w rodzaju service service postgresql-9.2 restart ) teraz powinieneś mieć dostęp do db jako użytkownik postgres
$psql psql (9.2.4) Wpisz "pomoc", aby uzyskać pomoc.
Postgres= #
Hope this adds info for new postgres users
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-08-05 18:17:40
Edytuj pg_hba.plik conf, np. z sudo emacs /etc/postgresql/9.3/main/pg_hba.conf
Zmień wszystkie metody uwierzytelniania na trust
. Zmień hasło uniksowe dla użytkownika "postgres". Restart Serwera. Zaloguj się za pomocą psql -h localhost -U postgres
i użyj just set Unix password. Jeśli to zadziała, możesz ponownie ustawić pg_hba.plik conf do wartości domyślnych.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-07-10 15:43:43
Jeśli próbujesz zalogować się do powłoki postgres jako użytkownik postgres, możesz użyć następujących poleceń.
Przełącz na użytkownika postgres
# su - postgres
Zaloguj się do psql
# psql
Hope that helps
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-02-16 13:32:11
Spróbuj nie używać parametru-W i pozostaw hasło puste. Czasami użytkownik jest tworzony bez hasła.
Jeśli to nie zadziała zresetuj hasło. Można to zrobić na kilka sposobów, ale działa to na wielu systemach:
$ su root
$ su postgres
$ psql -h localhost
> ALTER USER postgres with password 'YourNewPassword';
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-10-08 10:03:43
Zgodnie z zasadą: nigdy nie należy ustawiać hasła dla użytkownika POSTGRES .
Jeśli potrzebujesz dostępu do superużytkownika z pgAdmin, Utwórz innego superużytkownika. W ten sposób, jeśli poświadczenia tego superużytkownika zostaną naruszone, możesz zawsze ssh do rzeczywistego hosta bazy danych i ręcznie usunąć superużytkownika za pomocą
sudo -u postgres -c "DROP ROLE superuser;"
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-10-20 10:27:51
Chciałem tylko dodać, że należy również sprawdzić, czy hasło wygasło.
Więcej informacji można znaleźć w artykule Postgres password authentication failed.Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:34:37
Oto kilka kombinacji, które próbowałem się zalogować:
# 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
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-12-10 10:16:24
Miałem podobny problem. Ubuntu zostało mi zalogować się w konsoli z dowolnego hasła dla superuser. Poza tym, że połączyłem się z-h localhost w Komendzie liniowej psql.
Zauważyłem też, że "localhost:8080/MyJSPSiteLogIn" - showed: Fatal: błąd autentication z użytkownikiem "user".
Pg_hba.conf było ok.
Zauważyłem, że dwie wersje postgres działają w tej samej usłudze.
Solved-odinstalowanie wersji inutil.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-03-30 19:51:54
Dla tych, którzy używają go po raz pierwszy i nie mają informacji o tym, jakie jest hasło, mogą wykonać poniższe kroki(zakładając, że jesteś na ubuntu):
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-16 08:21:19
Mam nadzieję, że to pomoże Ci szybko. Możesz zmienić hasło postgres sql za pomocą polecenia poniżej.
Polecenie
Sudo-u postgres psql
A następnie możesz zaktualizować hasło
Polecenie
Zmień hasło użytkownika postgres 'YOUR_NEW_PASSWORD';
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-02 10:58:46