J'ai installé Postgresql sur mon PC Windows 10. J'ai utilisé l'outil pgAdmin II pour créer une base de données appelée société et je souhaite maintenant démarrer le serveur de base de données. Je n'arrive pas à comprendre comment faire cela . J'ai exécuté la commande de démarrage sur la ligne de commande postgres et rien ne semble se passer.
Ce que je fais c'est:
postgres=# pg_ctl start
postgres=# pg_ctl status
postgres=# pg_ctl restart
postgres=# pg_ctl start company
postgres=# pg_ctl status
.....-> Je ne vois rien revenir.
pg_ctl
est un programme en ligne de commande (Windows) pas une instruction SQL. Vous devez le faire à partir d'un cmd.exe
. Ou utilisez net start postgresql-9.5
Si vous avez installé Postgres via le programme d'installation, vous devez démarrer Windows service} au lieu d'exécuter pg_ctl
manuellement, par exemple. en utilisant:
net start postgresql-9.5
Notez que le nom du service peut être différent dans votre installation. Une autre option consiste à démarrer le service via le panneau de configuration Windows.
I j'ai utilisé l'outil pgAdmin II pour créer une base de données appelée société
Cela signifie que Postgres est déjà en cours d'exécution, donc je ne comprends pas pourquoi vous pensez avoir besoin de le refaire. Surtout parce que le programme d'installation configure généralement le service pour qu'il démarre automatiquement au démarrage de Windows.
La raison pour laquelle vous ne voyez aucun résultat est que psql
requiert que chaque commande SQL soit terminée par ;
; dans votre cas, elle attend simplement que vous terminiez l'instruction.
Voir ici pour plus de détails: Dans psql, pourquoi certaines commandes n’ont aucun effet?
Après de nombreuses recherches et tests, j'ai trouvé la solution: Si vous êtes dans Windows:
1 - vous devez d’abord trouver le répertoire des bases de données PG exécuter la commande en tant que commande sql dans les outils de requête pgAdmin
$ show data_directory;
résultat :
------------------------ - D:/PG_DATA/data - ------------------------
2 - allez dans le répertoire bin de postgres, dans mon cas, il se trouve "c:/programms/postgresSql/bin"
et ouvrez une commande Invite (CMD) et exécutez cette commande:
pg_ctl -D "D:\PSG_SQL\data" restart
Cela devrait le faire.
Allez dans le dossier bin du lecteur C où Postgres est installé . Lancez la commande suivante dans git bash ou une invite de commande: Pg_ctl.exe redémarrez -D "" Ex: pg_ctl.exe redémarrez -D "C:\Program Files\PostgreSQL\9.6\data "
Une autre manière: Tapez "services.msc" dans la fenêtre contextuelle d’exécution (windows + R) . Cela affichera tous les services en cours d’exécutionSélectionnez le service Postgres dans la liste et cliquez sur Démarrer/Arrêter/Redémarrer.
Merci
J'ai trouvé en utilisant
net start postgres_service_name
le seul moyen fiable d'utiliser Postgres sous Windows
Si vous obtenez une erreur "psql.exe 'n'est pas reconnu comme une commande interne ou externe, ..."
Il peut y avoir: Causes
ou - Le client de base de données PostgreSQL n'est pas installé sur votre PC
Puisque vous avez déjà installé PostgreSQL, ce dernier ne peut pas être le problème (en supposant que tout est installé comme prévu)
Afin de corriger le premier " veuillez spécifier le chemin complet du répertoire bin dans le dossier d'installation de PostgreSQL, où réside cet outil."
Par exemple
Chemin: "C:\Program Files\PostgreSQL\10\bin"