Uruchamiam instancję Postgres 9.3 na serwerze Ubuntu 12.04:
~# service postgresql start
* The PostgreSQL server failed to start. Please check the log output.
[fail]
start kończy się niepowodzeniem, ale nie pozostawia dziennika, ten plik jest pusty:
tail /var/log/postgresql/postgresql-9.3-main.log
i nie ma innych plików w tym katalogu: / var / log / postgresql /
jaki jest najlepszy sposób na rozwiązanie tego problemu?
postgresql
Max L.
źródło
źródło
su - postgres; /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data
i zobacz, co ci daje. Może być konieczna zmiana nazwy użytkownika i ścieżek w zależności od konfiguracji.-d 3
dopostgres
polecenia. Umożliwi to szersze wyjście debugowania zapisywane w dzienniku. Możesz obniżyć wynik debugowania, zmieniając go na 1 lub 2, lub zwiększyć, zmieniając go na 4 lub 5. Ponadto, co to jest wyjściewhich pgsql
?Odpowiedzi:
Spróbuj uruchomić go ręcznie z włączonym debugowaniem. Spowoduje to, że uruchomi się na pierwszym planie i wydrukuje wszelkie komunikaty o błędach do standardowego błędu, jednocześnie zwiększając gadatliwość.
Wierzę, że będzie to poprawna linia poleceń dla PostgreSQL 9.3 na Ubuntu, ale może wymagać drobnych poprawek (uwaga: linia jest podzielona dla czytelności; możesz zrekombinować ją do jednej linii (bez odwrotnego ukośnika), jeśli chcesz):
Początek to lokalizacja
postgres
pliku binarnego, następnie włączamy debugowanie i ustawiamy go na poziom 3 (możesz to zmienić w górę lub w dół, aby zwiększyć lub zmniejszyć szczegółowość). Następnie określamy katalog danych i plik konfiguracyjny na początek. Sądzę, że powinny to być wartości domyślne dla Ubuntu Server 12.04.Mamy nadzieję, że dostarczy ci wystarczających informacji, aby ustalić, gdzie jest problem.
źródło
service
Polecenie to po prostu wygodne opakowanie wokół/etc/init.d/
skryptu, który faktycznie uruchamia i zatrzymuje proces. Musisz spojrzeć na ten skrypt, aby zobaczyć, co robi inaczej niż po ręcznym uruchomieniu. Robienie czegoś takiegobash -x /etc/init.d/postgresql start
może być dobrym miejscem do rozpoczęcia badań.