Problème pg_dump avec fichier pgpass.conf

Signaler
-
 jsteffe -
Bonjour,


Je voudrais faire une sauvegarde automatique en créant un fichier batch qui contienne les instructions suivantes :
cd C:\Program Files\PostgreSQL\13\bin
pg_dump -U postgres exo > f:\sauv_exo_%DATE:~6,4%%DATE:~3,2%%DATE:~0,2%.sql

Quand j'exécute le pg_dump dans une fenêtre DOS, il fonctionne mais me demande le mot de passe.
Pour éviter la demande de mot de passe, j'ai donc ajouté la ligne suivante dans le fichier pg_pass.conf :
localhost:5432:exo:postgres:postgres

A l'exécution du fichier batch, j'obtiens l'erreur suivante :
C:\Program Files\PostgreSQL\13\bin>pg_dump -U postgres exo 1>f:\sauv_exo_20201225.sql
pg_dump: erreur : la connexion à la base de données « exo » a échoué : fe_sendauth: no password supplied

Merci de me dire comment régler ce problème.
Jérôme

4 réponses

Messages postés
13618
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
28 juillet 2021
4 490
Bonjour,

Pour forcer pg_dump à utiliser le fichier %APPDATA%\postgresql\pgpass.conf essaie de rajouter l'option -w comme ceci :
cd C:\Program Files\PostgreSQL\13\bin

pg_dump -d exo -h localhost -p 5432 -U postgres -w > f:\sauv_exo_%DATE:~6,4%%DATE:~3,2%%DATE:~0,2%.sql 


ps : attention à la casse il s'agit d'un -w minuscule



“L'intelligence artificielle se définit comme le contraire de la bêtise naturelle.”
Bonjour et merci pour la réponse.

J'ai essayé mais j'obtiens la même réponse :
pg_dump: erreur : la connexion à la base de données « exo » a échoué : fe_sendauth: no password supplied
Messages postés
13618
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
28 juillet 2021
4 490
Est-ce que ton fichier pgpass.conf est dans le bon dossier ?

mon fichier pgpass était dans le répertoire suivant :
C:\Users\postgres\AppData\Roaming\postgresql

J'ai essayé de le copier dans le répertoire BIN et DATA de Postgres mais j'ai toujours le même message.