PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 18/09/2020 14:47:18

etelhci
Membre

pg_ctl status sous Windows ne voit le serveur

Bonjour.

J'ai installé un serveur PostgreSQL 11.9 avec l'installer d'EDB.

J'ai réussi à le configurer en tant que primary pour le "26.2. Log-Shipping Standby Servers". Le répertoire d'archive est bien alimenté avec les fichiers WAL.
J'ai aussi réussi à faire un backup par pg_basebackup.

Mais j'ai un souci avec pg_ctl status qui ne voit pas le serveur.

J'ai fait dans cmd.exe :
cd C:\Program Files\PostgreSQL\11
pg_env.bat
cd bin (pour éviter un message d'erreur parasite étrange et que ce soit en anglais)
pg_ctl status
Résultat :
pg_ctl : aucun serveur en cours d'exécution

Par avance merci.

Cordialement.

Hors ligne

#2 18/09/2020 14:49:03

rjuju
Administrateur

Re : pg_ctl status sous Windows ne voit le serveur

Il faut probablement spécifier l'emplacement du répertoire de données avec l'option -D.

En ligne

#3 18/09/2020 14:51:28

etelhci
Membre

Re : pg_ctl status sous Windows ne voit le serveur

Même réponse avec pg_ctl status -D "C:\Program Files\PostgreSQL\11\data".

Cordialement.

Hors ligne

#4 18/09/2020 14:54:34

rjuju
Administrateur

Re : pg_ctl status sous Windows ne voit le serveur

J'imagine que le serveur stocké à cet endroit est bien démarré, ou s'agit-il du 2nd serveur créé avec pg_basebackup?

En ligne

#5 18/09/2020 15:02:26

etelhci
Membre

Re : pg_ctl status sous Windows ne voit le serveur

Tout à fait.
Il n'y a qu'un seul serveur.

J'interagis avec sans problème via pgadmin 4.

Pour la configuration du log shipping du primary, j'ai suivi la documentation et donc utilisé les commandes.
A l'exception de la prise en compte des changements de postgres.conf pour lesquels j'ai utilisé le Reload Configuration de pgadmin 4.
(je n'avais déjà pas réussi à utiliser pg_ctl reload)

Cordialement.

P.S. dans mes réponses, les lignes blanches disparaissent. Y a-t-il moyen de les préserver, histoire que ce soit moins tassé ?

Dernière modification par etelhci (18/09/2020 15:06:24)

Hors ligne

#6 18/09/2020 15:06:05

etelhci
Membre

Re : pg_ctl status sous Windows ne voit le serveur

Reload Server -> Reload Configuration

Hors ligne

#7 18/09/2020 15:06:21

rjuju
Administrateur

Re : pg_ctl status sous Windows ne voit le serveur

Il n'y a qu'un seul serveur.

Techniquement si vous avez exécuté pg_basebackup vous avez maintenant 2 servers.


J'interagis avec sans problème via pgadmin 4.

Que renvoie cette requête ? select setting from pg_settings where name = 'data_directory'


P.S. dans mes réponses, les lignes blanches disparaissent. Y a-t-il moyen de les préserver, histoire que ce soit moins tassé ?

C'est un problème avec fluxbb je pense.  Il faut doubler ou tripler les lignes vides, c'est ennuyant mais je n'ai jamais trouvé d'autre alternative.

En ligne

#8 18/09/2020 15:14:08

etelhci
Membre

Re : pg_ctl status sous Windows ne voit le serveur

select setting from pg_settings where name = 'data_directory';

C:/Program Files/PostgreSQL/11/data



A tout hasard j'ai testé aussi :
pg_ctl status -D "C:/Program Files/PostgreSQL/11/data"
pg_ctl status -D "C:\\Program Files\\PostgreSQL\\11\\data"
avec le même résultat.



Techniquement si vous avez exécuté pg_basebackup vous avez maintenant 2 servers.

Un répertoire contenant ce qui ressemble une copie du contenu du répertoire data.
Mais à ma connaissance cela ne démarre aucun serveur. C'est juste une sauvegarde.

Hors ligne

#9 18/09/2020 15:22:10

etelhci
Membre

Re : pg_ctl status sous Windows ne voit le serveur

Contenu du pg_env.bat (créé par l'installer d'EDB) :
@ECHO OFF
REM The script sets environment variables helpful for PostgreSQL

@SET PATH="C:\Program Files\PostgreSQL\11\bin";%PATH%
@SET PGDATA=C:\Program Files\PostgreSQL\11\data
@SET PGDATABASE=postgres
@SET PGUSER=postgres
@SET PGPORT=5432
@SET PGLOCALEDIR=C:\Program Files\PostgreSQL\11\share\locale

Hors ligne

#10 18/09/2020 15:26:48

rjuju
Administrateur

Re : pg_ctl status sous Windows ne voit le serveur

Mais à ma connaissance cela ne démarre aucun serveur. C'est juste une sauvegarde.

Le serveur n'est pas démarré, mais ça reste le contenu d'un serveur quand même.



Pour le problème avec pg_ctl status, difficile à dire n'utilisant pas windows.  La seule piste que j'imagine serait que votre utilisateur n'a pas les droits suffisants et que cela ne remonte pas d'erreur.  Vous pourriez essayer en démarrant le script en tant qu'administrateur voir si ça change quelque chose.

En ligne

#11 18/09/2020 15:34:11

etelhci
Membre

Re : pg_ctl status sous Windows ne voit le serveur

Merci !
Je me disais bien que c'était tout bête...

Je suis administrateur du poste mais cela ne suffit pas.
Il faut d'abord lancer cmd.exe en tant qu'administrateur.
(je n'ai pas encore le réflexe, la dernière fois que j'ai eu les droits d'administration du poste, c'est sous XP où il n'y avait pas cette subtilité).

Cordialement.

Hors ligne

Pied de page des forums