Comment changer le mot de passe de l’utilisateur PostgreSQL?

Comment changer le mot de passe pour l’utilisateur PostgreSQL?

Pour mot de passe moins login:

sudo -u user_name psql db_name 

Pour réinitialiser le mot de passe si vous avez oublié:

 ALTER USER user_name WITH PASSWORD 'new_password'; 

Puis tapez:

 $ sudo -u postgres psql 

Alors:

 \password postgres 

Ensuite, pour quitter psql :

 \q 

Si cela ne fonctionne pas, reconfigurez l’authentification.

Editez /etc/postgresql/9.1/main/pg_hba.conf (le chemin sera différent) et modifiez:

  local all all peer 

à:

  local all all md5 

Puis redémarrez le serveur:

 $ sudo service postgresql restart 

Vous pouvez et devez avoir le mot de passe des utilisateurs crypté:

 ALTER USER username WITH ENCRYPTED PASSWORD 'password'; 

Je pense que la meilleure façon de changer le mot de passe est simplement d’utiliser:

 \password 

dans la console Postgres.

La source:

Il faut être prudent lors de la spécification d’un mot de passe non crypté avec cette commande. Le mot de passe sera transmis au serveur en clair et il pourra également être enregistré dans l’historique de commande du client ou dans le journal du serveur. psql contient une commande \ password qui peut être utilisée pour changer le mot de passe d’un rôle sans exposer le mot de passe en clair.

de https://www.postgresql.org/docs/9.0/static/sql-alterrole.html .

Pour changer le mot de passe en utilisant la ligne de commande Ubuntu, utilisez:

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

Accédez à votre configuration et modification postgresql pg_hba.conf

sudo vim /etc/postgresql/9.3/main/pg_hba.conf

Puis changez cette ligne:

 Database administrative login by Unix domain socket local all postgres md5 

à :

 Database administrative login by Unix domain socket local all postgres peer 

puis redémarrer le service PostgreSQL via la commande SUDO puis

psql -U postgres

Vous serez maintenant entré et vous verrez le terminal Postgresql

puis entrez

\password

et entrez le nouveau mot de passe pour l’utilisateur par défaut Postgres, après avoir modifié à nouveau le mot de passe avec succès, allez dans pg_hba.conf et revenez à “md5”

maintenant vous serez connecté en tant que

psql -U postgres

avec votre nouveau mot de passe

Faites-moi savoir si vous trouvez tous des problèmes.

Ce fut le premier résultat sur Google, alors que je cherchais à renommer un utilisateur, alors:

 ALTER USER  WITH PASSWORD ''; -- change password ALTER USER  RENAME TO ; -- rename user 

Quelques autres commandes utiles pour la gestion des utilisateurs:

 CREATE USER  PASSWORD '' IN GROUP ; DROP USER ; 

Déplacer l’utilisateur vers un autre groupe

 ALTER GROUP  DROP USER ; ALTER GROUP  ADD USER ; 

La configuration que j’ai sur mon serveur a été beaucoup personnalisée et j’ai réussi à changer le mot de passe seulement après avoir défini l’authentification de confiance dans le fichier pg_hba.conf :

 local all all trust 

N’oubliez pas de changer cela en mot de passe ou md5

Pour demander un nouveau mot de passe pour l’utilisateur postgres (sans l’afficher dans la commande):

 sudo -u postgres psql -c "\password" 

Pour mon cas sur Ubuntu 14.04 installé avec postgres 10.3. Je dois suivre les étapes suivantes

  • su - postgres pour passer utilisateur à postgres
  • psql pour entrer le shell postgres
  • \password alors entrez votre mot de passe
  • \q pour quitter la session shell
  • Ensuite, vous revenez à root en exécutant exit et configurez votre pg_hba.conf (le mien est à /etc/postgresql/10/main/pg_hba.conf ) en vous assurant que vous avez la ligne suivante

    local all postgres md5

  • Redémarrez votre service postgres par le service postgresql restart
  • postgres maintenant à l’utilisateur postgres et entrez à nouveau le shell postgres. Il vous demandera un mot de passe.

utilisez ceci:

 \password 

entrez le nouveau mot de passe que vous voulez pour cet utilisateur, puis confirmez-le. Si vous ne vous souvenez plus du mot de passe et que vous souhaitez le modifier, vous pouvez vous connecter en tant que postgres, puis utiliser ceci:

 ALTER USER 'the username' WITH PASSWORD 'the new password';