J'ai installé PostgreSQL 8.4, le client Postgres et Pgadmin 3. L'authentification a échoué pour l'utilisateur "postgres" pour le client de la console et Pgadmin. J'ai tapé utilisateur comme "postgres" et mot de passe "postgres", car cela fonctionnait auparavant. Mais maintenant, l'authentification a échoué. Je l'ai fait avant quelques fois sans ce problème. Que devrais-je faire? Et que se passe-t-il?
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"
postgresql
ubuntu
pgadmin
I159
la source
la source
ALTER
étape , puis l' édition de monpg_hba.conf
fichier , puis le redémarrage de postgres .Réponses:
Si je me souviens bien, l'utilisateur
postgres
n'a pas de mot de passe de base de données défini sur Ubuntu par défaut. Cela signifie que vous ne pouvez vous connecter à ce compte qu'en utilisant l'utilisateur dupostgres
système d'exploitation compte .En supposant que vous avez
root
accès à la boîte, vous pouvez faire:Si cela échoue avec une
database "postgres" does not exists
erreur, alors vous n'êtes probablement pas sur un serveur Ubuntu ou Debian :-) Dans ce cas, ajoutez simplementtemplate1
à la commande:Si l'une de ces commandes échoue avec une erreur,
psql: FATAL: password authentication failed for user "postgres"
vérifiez le fichier/etc/postgresql/8.4/main/pg_hba.conf
: il doit y avoir une ligne comme celle-ci comme première ligne sans commentaire:Pour les versions plus récentes de PostgreSQL, il
ident
se peut quepeer
. C'est OK aussi.À l'intérieur du
psql
shell, vous pouvez donner un mot de passe à l' utilisateur DBpostgres
:Vous pouvez quitter le
psql
shell en tapant CtrlDou avec la commande\q
.Maintenant, vous devriez être en mesure de donner à pgAdmin un mot de passe valide pour le superutilisateur DB et il sera content aussi. :-)
la source
ident
pour que les premières étapes fonctionnent. Si vous l'avez déjà défini sur md5 ou autre chose, vous ne pourrez pas vous connecter automatiquement.La réponse du personnel est correcte, mais si vous souhaitez automatiser davantage, vous pouvez:
$ sudo -u postgres psql -c "ALTER USER postgres PASSWORD 'postgres';"
Terminé! Vous avez enregistré User = postgres et password = postgres.
Si vous n'avez pas de mot de passe pour l'utilisateur postgres ubuntu, faites:
$ sudo passwd postgres
la source
C'était frustrant, la plupart des réponses ci-dessus sont correctes mais elles ne mentionnent pas que vous devez redémarrer le service de base de données avant que les modifications du fichier pg_hba.conf ne prennent effet.
donc si vous apportez les modifications comme mentionné ci-dessus:
puis redémarrez en tant que root (sur centos, c'est quelque chose comme le service service redémarrage postgresql-9.2) maintenant vous devriez être en mesure d'accéder à la base de données en tant qu'utilisateur postgres
J'espère que cela ajoute des informations aux nouveaux utilisateurs de PostgreSQL
la source
sudo service postgresql restart
sudo systemctl restart postgresql.service
Editez le fichier pg_hba.conf, par exemple avec
sudo emacs /etc/postgresql/9.3/main/pg_hba.conf
Remplacez toutes les méthodes d'authentification par
trust
. Changer le mot de passe Unix pour l'utilisateur "postgres". Redémarrez le serveur. Connectez-vous avecpsql -h localhost -U postgres
et utilisez le mot de passe Unix juste défini. Si cela fonctionne, vous pouvez réinitialiser le fichier pg_hba.conf aux valeurs par défaut.la source
sudo su - postgres
prochain mot de passe set / fix / unset pour postgres db (et dans le shell, si nécessaire), puis restaurez dans securemd5
ouident
méthodes et redémarrez à nouveau pour que les valeurs restent. Soit dit en passant, sur Cent / RedHat 9.4, le fichier se trouve à:/var/lib/pgsql/9.4/data/pg_hba.conf
Pour ceux qui l'utilisent pour la première fois et n'ont aucune information sur le mot de passe, ils peuvent suivre les étapes ci-dessous (en supposant que vous êtes sur ubuntu):
Ouvrez le fichier pg_hba.conf dans
/etc/postgresql/9.x/main
2. modifiez la ligne ci-dessous
à
Redémarrez le serveur
Enfin, vous pouvez vous connecter sans mot de passe comme indiqué sur la figure
Ref ici pour plus d'informations
la source
Si vous essayez de vous connecter au shell postgres en tant qu'utilisateur postgres, vous pouvez utiliser les commandes suivantes.
passer à l'utilisateur postgres
connectez-vous à psql
J'espère que cela pourra aider
la source
su - postgres
demande un mot de passe sur posgresql 9.5 sur Ubuntu 16.04su - postgres
est la commande suggérée par la documentation officielle de fedora , mais je reçois moi aussi un mot de passe. Pour contourner que je suivais ce forum postgres email qui utilise la même commande que la réponse acceptée ici:sudo -u postgres psql
. N'oubliez pas d'initialiser et de démarrer le serveur de base de données.Essayez de ne pas utiliser le paramètre -W et laissez le mot de passe en blanc. Parfois, l'utilisateur est créé sans mot de passe.
Si cela ne fonctionne pas, réinitialisez le mot de passe. Il existe plusieurs façons de le faire, mais cela fonctionne sur de nombreux systèmes:
la source
En règle générale: VOUS NE DEVEZ JAMAIS DÉFINIR UN MOT DE PASSE POUR L'UTILISATEUR DE POSTGRES .
Si vous avez besoin d'un accès superutilisateur à partir de pgAdmin, créez un autre superutilisateur. De cette façon, si les informations d'identification de ce superutilisateur sont compromises, vous pouvez toujours ssh dans l'hôte de base de données réel et supprimer manuellement le superutilisateur à l'aide
la source
Une fois que vous êtes dans votre shell postgres, entrez cette commande
Après avoir entré cette commande, vous serez invité à définir votre mot de passe, définissez-le simplement, puis essayez.
la source
Lorsque vous installez postgresql, aucun mot de passe n'est défini pour l'utilisateur postgres, vous devez le définir explicitement sur Unix à l'aide de la commande:
Il vous demandera votre mot de passe sudo et vous demandera ensuite un nouveau mot de passe utilisateur postgres. La source
la source
Je voulais juste ajouter que vous devriez également vérifier si votre mot de passe a expiré.
Voir Échec de l'authentification par mot de passe Postgres pour plus de détails.
la source
Voici quelques combinaisons auxquelles j'ai essayé de me connecter:
la source
J'avais un problème similaire. Ubuntu m'a laissé me connecter à la console avec un mot de passe pour le superutilisateur. Sauf lorsque je me suis connecté avec -h localhost dans la commande de ligne psql.
J'ai également observé que "localhost: 8080 / MyJSPSiteLogIn" - montrait: Fatal: erreur d'authentification avec l'utilisateur "user".
pg_hba.conf était ok.
J'ai noté que deux versions de postgres fonctionnaient dans le même service.
Résolu - désinstallation de la version inutil.
la source
J'avais rencontré un problème similaire. Lors de l'accès à une base de données, je recevais une invite ci-dessous après la mise à jour du mot de passe "Échec de l'authentification par mot de passe pour l'utilisateur" postgres "" dans PGAdmin
Solution:
J'espère que cela résoudra votre problème
la source
J'espère que cela vous aidera peu de temps. Vous pouvez changer le mot de passe de postgres sql en utilisant la commande ci-dessous.
Commander
sudo -u postgres psql
Et ensuite, vous pouvez mettre à jour le mot de passe
Commander
Modifier le mot de passe utilisateur postgres 'YOUR_NEW_PASSWORD';
la source