Problème pg_dump avec fichier pgpass.conf
jsteffe
-
jsteffe -
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
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
-
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
-
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 -
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.