Potrzebuję alternatywy dla uruchomienia następującego polecenia:
C:\xxx\pgsql\bin\pg_ctl" -D "C:\xxx\pgsql\data" -l "C:\yyy\log\pgsql.log" start
.
W ten sposób serwer uruchamia się i loguje do C:\yyy\log\pgsql.log
. Kiedy próbuję zarejestrować serwer jako usługę - żadne opcje rejestrowania nie są dostępne, a serwer loguje się do Podglądu zdarzeń. Z dokumentacji pg_ctl:
rejestr pg_ctl [-N nazwa usługi] [-U nazwa użytkownika] [-P hasło] [-D datadir] [-S a [uto] | d [emand]] [-w] [-t sekundy] [-s] [-o opcje]
Jak zmusić serwer do zalogowania się do pliku? Uwaga: Nie chcę używać instalatora za pomocą jednego kliknięcia, chcę po prostu pracować z rozpakowanymi plikami binarnymi.
postgresql
windows
log
Vic
źródło
źródło
log_statement
nalog_statement = 'all'
Odpowiedzi:
Znajdź swój
postgresql.conf
w katalogu danychZnajdź sekcję, która wygląda następująco
po prostu odkomentuj i użyj tych parametrów. Następnie uruchom ponownie usługę postgres,
Ponieważ korzystasz z Postgresql w systemie Windows, możliwe, że nie będziesz mieć możliwości edycji,
postgresql.conf
gdy usługa jest uruchomiona. Jeśli tak jest:postgresql.conf
Spróbuj !!!
źródło
stderr, csvlog, syslog, eventlog
tam mieć . Musiałem zamiast zmienić następujące właściwości:logging_collector = on, log_directory = ..., log_filename=...
. Jeśli edytujesz swoją odpowiedź, zaakceptuję ją.