Comment vérifier l'utilisateur et le mot de passe postgres? [fermé]

104

Un de mes amis a fait cette configuration sur mon mac. Mais je ne connais pas le nom d'utilisateur et le mot de passe qu'il avait choisi.

ThiagoLeal
la source
les mots de passe sont stockés dans des hachages unidirectionnels. vous ne pouvez pas extraire le mot de passe brut de la base de données, car il n'existe plus. parle à ton ami. et au-delà, hors-sujet pour ce site.
Marc B
45
J'apprécie que ce soit hors sujet. Mais c'est aussi le hit numéro un sur Google pour "postgres show password" et la réponse a été utile pour mon problème de programmation.
Steven Noble
3
Ce n'est donc pas "hors sujet" pour ce site. C'est une question de programmation sur la façon d'accomplir une tâche spécifique.
Maiya

Réponses:

164

Vous ne pourrez pas connaître le mot de passe qu'il a choisi. Cependant, vous pouvez créer un nouvel utilisateur ou définir un nouveau mot de passe pour l'utilisateur existant.

Habituellement, vous pouvez vous connecter en tant qu'utilisateur postgres:

Ouvrez un terminal et faites sudo su postgres. Maintenant, après avoir entré votre mot de passe administrateur, vous pouvez lancer psqlet faire

CREATE USER yourname WITH SUPERUSER PASSWORD 'yourpassword';

Cela crée un nouvel utilisateur administrateur. Si vous souhaitez lister les utilisateurs existants, vous pouvez également faire

\du

pour lister tous les utilisateurs, puis

ALTER USER yourusername WITH PASSWORD 'yournewpass';
Thilo
la source
Je suppose donc que cela doit être fait via l'utilitaire psql mais pas possible dans pgadmin
JohnMerlino
@JohnMerlino vous pouvez lister et créer des utilisateurs via phppgadmin, mais vous ne pourrez pas vous connecter si vous ne connaissez le mot de passe d'aucun compte.
Mark le
Comment y accéder avec une chaîne URL? Par exemple, si vous avez une application qui se connecte à votre base de données, devez-vous entrer votre nom d'utilisateur et votre mot de passe dans l'URL?
Maiya
8

Vous pouvez modifier le pg_hba.conf puis recharger le postgresql. quelque chose dans le pg_hba.conf peut être comme ci-dessous:

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust

alors vous changez votre utilisateur en postgresql, vous pouvez vous connecter avec succès.

su postgresql
léger
la source