PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Quel est le mot de passe par défaut pour Postgres

AVERTISSEMENT :trust signifie exactement cela. Toute personne pouvant se connecter au serveur PostgreSQL peut le contrôler. Si vous définissez trust mode qui autorise les super-utilisateurs comme l'utilisateur postgres (ou all utilisateurs) pour se connecter, ils obtiennent le contrôle total de votre PostgreSQL et peuvent probablement également exécuter des commandes shell. Vous ne devriez généralement l'utiliser que pour changer le mot de passe puis restaurez la configuration au mode d'authentification que vous utilisiez auparavant.

Si vous avez utilisé un script d'installation sans assistance, le mot de passe sera dans le script ou le fichier de configuration associé.

Sinon, traitez-le comme si vous aviez perdu/oublié le mot de passe plutôt que de ne jamais le savoir :

  • Modifier pg_hba.conf , en définissant le mode d'authentification sur trust au lieu du md5 par défaut
  • Dans le panneau de configuration des services, redémarrez le service PostgreSQL
  • Se connecter avec psql ou PgAdmin ou autre
  • ALTER USER postgres PASSWORD 'mynewpassword';
  • Modifier pg_hba.conf à nouveau et redéfinissez le mode d'authentification sur md5
  • Redémarrez PostgreSQL à nouveau

pg_hba.conf se trouve dans votre répertoire de données. Par défaut, ce sera %PROGRAMFILES%\PostgreSQL\9.3\data .

Pour le modifier, vous devrez utiliser l'onglet de sécurité pour vous donner des autorisations de lecture/écriture (via une invite UAC). Cela peut nécessiter que vous vous définissiez comme propriétaire du fichier.

Sur les systèmes Unix, il est plus sûr d'ajouter un

local all all peer

ligne vers pg_hba.conf puis sudo -u postgres psql (en supposant que votre serveur PostgreSQL s'exécute en tant qu'utilisateur postgres ) pour obtenir un psql interactif session sans utiliser de mot de passe. De cette façon, vous n'avez pas besoin d'utiliser trust .