137 votes

Comment puis-je démarrer PostgreSQL sous Windows ?

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 compagnie, et je veux maintenant démarrer le serveur de base de données. Je n'arrive pas à trouver comment faire. J'ai exécuté la commande start sur la ligne de commande postgres, mais rien ne semble se produire.

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 en retour.

1 votes

psql se connecte généralement à un serveur en fonctionnement de toute façon. Donc si vous pouviez lancer psql alors Postgres est déjà en cours d'exécution

0 votes

Merci. Je peux voir ce qui se passe maintenant.

0 votes

Nota: pg_ctl Les commandes sont serveur liés et net Les commandes sont service connexe

95voto

Santosh Patel Points 136

Allez dans le dossier bin du lecteur C où Postgres est installé. Exécutez la commande suivante dans git bash ou Command prompt :

pg_ctl.exe restart -D "<path upto data>"

Ex :

pg_ctl.exe restart -D  "C:\Program Files\PostgreSQL\9.6\data"

Un autre moyen : tapez "services.msc" dans la fenêtre d'exécution (Windows + R). Cela affichera tous les services en cours d'exécution Sélectionnez le service Postgres dans la liste et cliquez sur démarrer/arrêter/redémarrer.

Merci

66voto

a_horse_with_no_name Points 100769

pg_ctl est un programme de ligne de commande (Windows) pas une instruction SQL. Vous devez le faire à partir d'un cmd.exe . Ou utilisez net start postgresql-9.5

enter image description here


Si vous avez installé Postgres par le biais du programme d'installation, vous devez lancer le programme 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 par le biais du panneau de configuration de Windows


I vous avez utilisé l'outil pgAdmin II pour créer une base de données appelée compagnie

Ce qui signifie que Postgres est déjà en cours d'exécution, donc je ne comprends pas pourquoi vous pensez que vous devez le faire à nouveau. D'autant plus 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 exige que chaque SQL qui doit être terminée par ; dans votre cas, il attend simplement que vous terminiez la déclaration.

Voir ici pour plus de détails : Dans psql, pourquoi certaines commandes n'ont-elles aucun effet ?

0 votes

Je reçois l'erreur suivante E:\Softwares\postgresql -12.4-1-Windows-x64-binaries \pgsql\bi n>pg_ctl -D datadir start pg_ctl : le répertoire "datadir" n'existe pas

1 votes

Cette réponse est meilleure que la réponse ci-dessus stackoverflow.com/questions/26441873/

27voto

ALWAN Points 6

Après beaucoup de recherches et de tests, j'ai trouvé la solution : si vous êtes sous Windows :

1 - vous devez d'abord trouver le répertoire des bases de données PG exécuter la commande comme commande sql dans les outils de requête de pgAdmin

$ show data_directory;

résultat :

------------------------
- D:/PG_DATA/data      -
------------------------

2 - allez dans le répertoire bin de postgres dans mon cas il est situé "c:/programmes/postgresSql/bin"

et ouvrez une invite de commande (CMD) et exécutez cette commande :

pg_ctl -D "D:\PSG_SQL\data" restart

Cela devrait le faire.

1 votes

C'est une solution pour redémarrer le serveur

0 votes

Utilisation de pg_ctl -D "D:\PSG_SQL\data" start devrait démarrer le serveur.

1voto

Nandan Chaturvedi Points 497

Si vous obtenez une erreur "psql.exe' n'est pas reconnu comme une commande interne ou externe,... "

Il peut y avoir : Causes

  • Le système est incapable de trouver l'outil psql.exe, car le chemin d'accès à cet outil n'est pas spécifié dans la variable d'environnement du système PATH

ou - Le client de la 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 réparer le premier " veuillez spécifier le chemin complet du répertoire bin dans le dossier d'installation de PostgreSQL, où se trouve cet outil".

Par exemple

Chemin : " C:\Program Fichiers \PostgreSQL\10\bin "

1voto

Tomasz Plonka Points 71

J'ai trouvé qu'utiliser

net start postgres_service_name

le seul moyen fiable d'exploiter Postgres sous Windows

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X