Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 15/03/2016 17:32:49
- Dany1234
- Membre
Connexion PSQL par l'invite de commande
Salut,
Je viens de me mettre à postgresql. Tout marche bien manuellement, mais je voudrais me connecter au serveur de ma base de données depuis l’invite de commande.
Je n’y arrive pas malgré les postes que j’ai pu lire dessus. J’aurai besoin d’un peu d’aide.
Je tape :
cd C:\Program Files\PostgreSQL\9.3\bin puis psql
La console me renvoie :
" psql n’a pas pu se connecter au serveur : Connection refused (0x0000274D/10061) Le serveur est-il actif sur l’hôte « localhost » (127.0.0.1) et accepte-t-il les connexionTCP/IP sur le port 5432 ?"
C’est clairement pas le bon port, je l’ai changé dans postgresql.conf, est –ce suffisant ? Sinon je ne vois pas pourquoi ça ne marche pas.
Si vous avez des idées, n’hésitez pas.
Modification du port dans postgresql.conf :
# - Connection Settings -
listen_addresses = '*'
port = 5001
max_connections = 100
pg_hba.conf:
# IPv4 local connections:
host all all 127.0.0.1/24 trust
Autres infos:
Hôte : localhost
Port TCP :5001
Nom serveur : JKL Prod
Hors ligne
#2 15/03/2016 18:25:35
- rjuju
- Administrateur
Re : Connexion PSQL par l'invite de commande
Bonjour,
Il faut spécifier dans le client (psql) les informations pour se connecter à la bonne instance. Dans votre cas, à priori « psql -p 5001 »
Pensez également à modifier votre variable d'environnement Path pour ne pas avoir besoin de spécifier le répertoire où trouver psql.
Julien.
https://rjuju.github.io/
Hors ligne
#3 15/03/2016 19:24:07
- Dany1234
- Membre
Re : Connexion PSQL par l'invite de commande
Je vous remercie pour votre réponse rapide.
J'ai modifié le path, c'est en effet beaucoup plus pratique comme cela.
Par contre en spécifiant -p 5001, ça me met "psql: ERROR: No such database: Danyb"
Ce qui est mon nom utilisateur de session windows et qui n'a donc rien a voir...
D'autres idées?
Hors ligne
#4 15/03/2016 19:48:38
- rjuju
- Administrateur
Re : Connexion PSQL par l'invite de commande
Il s'agit du comportement normal de psql. Sans rien lui spécifier, il teste la connexion avec le nom d'utilisateur système en tant qu'utilisateur postgres et nom de base. Voyez les options -U et nombase dans la documentation : http://docs.postgresqlfr.org/9.5/app-psql.html
Julien.
https://rjuju.github.io/
Hors ligne
#5 16/03/2016 11:13:03
- Dany1234
- Membre
Re : Connexion PSQL par l'invite de commande
Merci!
J'avais bien essayé en spécifiant -h -p et -U mais je viens de me rendre compte que je m'était trompé pour le paramètre de la BDD.
Donc ça marche!
La console me met tout de même que l'encodage de la console diffère de Windows, est-ce important? J'ai vu que certain rajoutait chcp 1252 dans le fichier runpsql.bat
Me conseillez-vous de le faire?
Une dernière question. Lorsque j'entre mes requêtes à la main dans l'invite tout fonctionne. A présent j'aimerais appeler mes fichiers.sql pour les exécuter et lorsque je spécifie le chemin ça me met "D: Permission denied" est-ce parce que ma commande n'est pas bonne ou est-ce autre chose?
Voici ma commande:
nom_base-> \i D:\Users\...\Requetes\extraction.sql
Hors ligne
#6 16/03/2016 12:31:16
- rjuju
- Administrateur
Re : Connexion PSQL par l'invite de commande
La console me met tout de même que l'encodage de la console diffère de Windows, est-ce important? J'ai vu que certain rajoutait chcp 1252 dans le fichier runpsql.bat
Oui, vous risquez des erreurs sinon.
Une dernière question. Lorsque j'entre mes requêtes à la main dans l'invite tout fonctionne. A présent j'aimerais appeler mes fichiers.sql pour les exécuter et lorsque je spécifie le chemin ça me met "D: Permission denied" est-ce parce que ma commande n'est pas bonne ou est-ce autre chose?
Voici ma commande:
nom_base-> \i D:\Users\...\Requetes\extraction.sql
Soit l'utilisateur système courant n'a pas accès à ces fichiers, soit vous lancer psql via un script(runpsql.bat ?) qui change l'utilisateur (\runas par exemple) pour un qui n'a pas accès à ces fichiers.
Julien.
https://rjuju.github.io/
Hors ligne
#7 16/03/2016 15:32:26
- Dany1234
- Membre
Re : Connexion PSQL par l'invite de commande
Merci pour vos réponses mais j'avoue que je ne comprends pas...
Je me connecte au serveur de ma BDD qui est en réseau.
Je voudrais que mes fichiers.sql qui sont sur ma session puissent être exécutés via l'invite de commande pour interroger cette base de données. Est-ce possible?
Comment vérifier qu'il s'agit d'un problème d'utilisateur?
Hors ligne
#8 16/03/2016 16:43:00
- rjuju
- Administrateur
Re : Connexion PSQL par l'invite de commande
Je parlais bien de l'utilisateur système local, sur votre session. Je m'aperçois également qu'il s'agit plus certainement d'un problème sur le nom du fichier. Pouvez-vous essayer en entourant le nom de guillemets doubles (\i "D:\Users..." ), ou en utilisant des slash plutôt que des antislash ?
Julien.
https://rjuju.github.io/
Hors ligne
Pages : 1