Назад | Перейти на главную страницу

Сервер postgres не запускается, не выводит журнал, как устранить неполадки?

Я запускаю экземпляр postgres 9.3 на сервере ubuntu 12.04:

~# service postgresql start 

 * The PostgreSQL server failed to start. Please check the log output.
                                                                     [fail]

запуск не выполняется, но журнала не остается, этот файл пуст:

tail /var/log/postgresql/postgresql-9.3-main.log 

и в этом каталоге нет других файлов: / var / log / postgresql /

как лучше всего решить эту проблему?

Попробуйте запустить его вручную с включенной отладкой. Это заставит его работать на переднем плане и распечатывать все сообщения об ошибках до стандартных ошибок, а также повышать уровень детализации.

Я считаю, что это будет правильная командная строка для PostgreSQL 9.3 в Ubuntu, но для этого может потребоваться небольшая настройка (примечание: строка разделена для удобства чтения; вы можете перекомбинировать ее в одну строку (без обратной косой черты), если хотите):

/usr/lib/postgresql/9.3/bin/postgres -d 3 -D /var/lib/postgresql/9.3/main \
   -c config_file=/etc/postgresql/9.3/main/postgresql.conf

Начало - это расположение postgres двоичный файл, затем мы включаем отладку и устанавливаем уровень 3 (вы можете изменить это значение вверх или вниз, чтобы увеличить или уменьшить подробность). Затем мы указываем каталог данных и файл конфигурации для начала. Я думаю, это должны быть значения по умолчанию для Ubuntu Server 12.04.

Надеюсь, это даст вам достаточно информации, чтобы определить, в чем проблема.

На основе ответа @christopher:

С postgres 12 на ubuntu я запустил:

# with my custom data dir:
/usr/lib/postgresql/12/bin/postgres -d 3 -D /media/ssd1/pg_data -c config_file=/etc/postgresql/12/main/postgresql.conf

# with default config:
/usr/lib/postgresql/12/bin/postgres -d 3 -D /var/lib/postgresql/12/main -c config_file=/etc/postgresql/12/main/postgresql.conf

В моем случае проблема заключалась в следующем:

2020-06-02 15:27:45.468 GMT [2522] LOG:  skipping missing configuration file "/media/ssd1/pg_data/postgresql.auto.conf"
2020-06-02 17:27:45.469 CEST [2522] FATAL:  data directory "/media/ssd1/pg_data" has wrong ownership
2020-06-02 17:27:45.469 CEST [2522] HINT:  The server must be started by the user that owns the data directory.
2020-06-02 17:27:45.469 CEST [2522] DEBUG:  shmem_exit(1): 0 before_shmem_exit callbacks to make
2020-06-02 17:27:45.469 CEST [2522] DEBUG:  shmem_exit(1): 0 on_shmem_exit callbacks to make
2020-06-02 17:27:45.469 CEST [2522] DEBUG:  proc_exit(1): 0 callbacks to make
2020-06-02 17:27:45.469 CEST [2522] DEBUG:  exit(1)

У меня не было полезной информации в sudo cat /var/log/postgresql/postgresql-12-main.log И sudo systemctl start postgresql не произвел никакого вывода