pgadmin me donne l'erreur: pas de mot de passe fourni
J'ai installé postgresql 9.2 sur linux (kubuntu) et la dernière version de pgadmin3, mais quand je suis connecter j'ai ce message d'erreur:
Une erreur s'est produite:
Erreur de connexion au serveur: fe_sendauth: pas de mot de passe fourni
Que puis-je faire?
J'ai aussi configuré le serveur tomcat pour mon application web en java. En fait, postgresql travaillait avant d'essayer ma demande.
source d'informationauteur DarkCoffee | 2012-12-26
Vous devez vous connecter pour publier un commentaire.
Si un mot de passe est requis dépend de vos paramètres dans
pg_hba.conf
. Et il ya différentes façons que vous pouvez connecter différents paramètres dans pg_hba.conf peuvent s'appliquer.Je cite l'aider livré avec pgAdmin pour le champ "Hôte" dans la connexion ("serveur") paramètres:
Si vous vous connectez via Unix socket les règles de "local" s'appliquent.
Alors que lors de la connexion via TCP/IP "hôte" (ou "hostssl"), des règles s'applique.
Si vous avez une ligne de ce type dans le haut de votre pg_hba.fichier conf:
ou:
.. alors vous pouvez vous connecter en local sans mot de passe si votre système utilisateur "postgres" et votre base de données utilisateur "postgres", trop.
Je me rends compte de cette question est ans, mais j'ai rencontré ce même problème aujourd'hui et d'avoir une solution qui utilise
trust
dans un nombre limité mais utile.Comme dans de nombreux ateliers de développement, quand les devs ont besoin d'un QA postgres mot de passe, ils ont juste à crier, message, e-mail, écrire sur leurs fronts, etc. Et je suis comme, "C'est vraiment mauvais. J'ai besoin de trouver un moyen de l'utilisation de l'ICP ici." Nous utilisons également des pgAdmin3.
Tout d'abord, ajoutez une ligne comme ceci à votre pg_hba.conf, où
dev
représente l'utilisateur pour les développeurs dans votre boutique en ligne:host all dev 127.0.0.1/32 trust
Déposer les développeurs de la clé publique dans leur
authorized_keys
dossier sur le serveur de base de données. Maintenant, faites-leur faire un ssh sur le serveur avec le-L
drapeau avec une commande similaire à la suivante:ssh -i ~/.ssh/id_rsa -L5432:127.0.0.1:5432 -vvv 101.102.103.104
Ceci permet d'utiliser la postgres port comme si c'était localhost. Bien sûr, remplacer la clé, le serveur et assurez-vous de la carte sur un port ouvert sur place (si vous avez un local postgres en cours d'exécution, c'est probablement lié à 5432). J'utilise un assez détaillé drapeau donc je peux facilement résoudre tous les ssh questions.
Ouvrir un autre terminal et tapez cette commande:
psql -h 127.0.0.1 -U dev -p 5432
Vous devriez avoir accès à la base de données et ne jamais être invité à entrer un mot de passe, ce qui je pense est grande parce que sinon, les devs vont juste de lever le mot de passe partout avec peu d'égard pour la sécurité, en lui passant comme les bonbons d'Halloween.
Maintenant, PgAdmin3 va encore vous demander un mot de passe, même si-c'est comme le jour -- vous n'en avez pas besoin. Mais d'autres Interfaces utilisateur postgres ne sera pas. Essayez Postico. Il est en version bêta, mais fonctionne très bien.
J'espère que cette réponse aide à quelqu'un comme moi qui préfère utiliser l'ICP pour postgres auth plutôt que de partager les mots de passe de bon gré mal gré.