J'ai besoin d'une alternative pour exécuter la commande suivante:
C:\xxx\pgsql\bin\pg_ctl" -D "C:\xxx\pgsql\data" -l "C:\yyy\log\pgsql.log" start
.
De cette façon, le serveur démarre et se connecte à C:\yyy\log\pgsql.log
. Lorsque j'essaie d'enregistrer le serveur en tant que service, aucune option de journalisation n'est disponible et le serveur se connecte à l'Observateur d'événements. De la documentation de pg_ctl:
pg_ctl register [-N servicename] [-U username] [-P password] [-D datadir] [-S a [uto] | d [emand]] [-w] [-t secondes] [-s] [-o options]
Comment forcer le serveur à se connecter à un fichier? Remarque: je ne veux pas utiliser le programme d'installation en un clic, je veux juste travailler avec des fichiers binaires décompressés.
Localisez votre postgresql.conf
dans le datadir
Trouvez la section qui ressemble à ceci
#------------------------------------------------------------------------------
# ERROR REPORTING AND LOGGING
#------------------------------------------------------------------------------
# - Where to Log -
#log_destination = 'stderr' # Valid values are combinations of
# stderr, csvlog, syslog and eventlog,
# depending on platform. csvlog
# requires logging_collector to be on.
# This is used when logging to stderr:
#logging_collector = off # Enable capturing of stderr and csvlog
# into log files. Required to be on for
# csvlogs.
# (change requires restart)
# These are only used if logging_collector is on:
#log_directory = 'pg_log' # directory where log files are written,
# can be absolute or relative to PGDATA
#log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log' # log file name pattern,
# can include strftime() escapes
#log_truncate_on_rotation = off # If on, an existing log file of the
# same name as the new log file will be
# truncated rather than appended to.
# But such truncation only occurs on
# time-driven rotation, not on restarts
# or size-driven rotation. Default is
# off, meaning append to existing files
# in all cases.
log_rotation_age = 7d # Automatic rotation of logfiles will
# happen after that time. 0 disables.
#log_rotation_size = 10MB # Automatic rotation of logfiles will
# happen after that much log output.
# 0 disables.
décommentez simplement et utilisez ces paramètres. Ensuite, redémarrez le service postgres,
Étant donné que vous exécutez postgresql dans Windows, il est possible que vous ne soyez pas autorisé à modifier postgresql.conf
pendant la durée du service. Si c'est le cas:
postgresql.conf
Essaie !!!