Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Thu 22 May 2014 12:09

Clo40
Juste Inscrit !
Date d'inscription: 28 Oct 2013
Messages: 4

pg_dumpall : mot de passe ignoré dans la chaîne de connexion

Bonjour,

J'utilise Postgres 9.3, sous Windows Server 2012.
Je souhaite lancer des dump quotidiens sur ma base à l'aide d'une tâche planifiée.
J'ai donc écrit un batch dans lequel j'utilise pg_dumpall de la manière suivante :

Code:

pg_dumpall.exe -d "host=localhost port=5432 user=mon_nom_d_utilisateur password=mon_mot_de_passe" -w -f mon_fichier

Manifestement, le mot de passe est ignoré dans la chaîne de connexion puisque j'obtiens le message suivant :

pg_dump: [programme d'archivage (db)] la connexion à la base de données « postgres » a échoué : fe_sendauth: no password supplied
pg_dumpall : échec de pg_dump sur la base de données « postgres », quitte

Je pense pourtant que la chaîne est lue puisque je n'ai pas le même message d'erreur lorsque je modifie le numéro du port.

Auriez-vous une idée ?
Merci beaucoup !

Hors ligne

 

#2 Thu 22 May 2014 15:32

Clo40
Juste Inscrit !
Date d'inscription: 28 Oct 2013
Messages: 4

Re: pg_dumpall : mot de passe ignoré dans la chaîne de connexion

J'ai trouvé une solution ici : http://stackoverflow.com/questions/4472 … ot-working

Pour résumer, il faut :
1) Créer un fichier pgpass.conf dans C:\Users\<mon_nom_d_utilisateur_windows>\AppData\postgresql
2) Remplir le fichier pgpass.conf avec (il est plus prudent de passer par pgAdmin3 pour écrire dans pgpass.conf) :

Code:

localhost:5432:ma_base_de_donnees:mon_nom_d_utilisateur_postgres:mon_mot_de_passe

3) Dans le batch :

Code:

pg_dump.exe -U mon_nom_d_utilisateur_postgres -w ma_base_de_donnees > mon_fichier

Mon batch fonctionne maintenant sans qu'il soit nécessaire de fournir manuellement un mot de passe. Et il pourra être exécuté par une tâche planifiée.
Youpi ! big_smile

Hors ligne

 

Pied de page des forums

Powered by FluxBB