сбой при запуске postgresql

сбой при запуске postgresql

Я установил базу данных postgresql на Redhat 7.1 и решил переместить базу данных на устройство ISCSI (LUN) внутри логического тома, смонтированного при запуске машины (отформатированного в xfs). Точка монтирования — /var/lib/pgsql

При загрузке сервера postgresql.service находится в состоянии сбоя.

В messages.log:

systemd: mounting /var/lib/pgsql
 starting PostgreSQL database server
 kernel sdv: unknown partition table
 sd 2:0:0:0: [sdb] attached SCSI disk
 xfs (dm-4): Mounting V4 Filesystem
 postgresql-check-db-dir: "/var/lib/pgsql/data" is missing or empty
 postgresql.service: control process exited, code=exited status=1
 Failed to start PostgreSQL database server.

Когда я вошел на сервер, если попытаться вручную запустить базу данных: systemctl start postgresql-> OK (и я не теряю никаких данных, база данных доступна)

Я думаю, что проблема в порядке процесса загрузки: сначала должна быть запущена сетевая служба, затем iscsi, затем lvm и т. д.

Поэтому я попытался принудительно установить зависимости от /usr/lib/systemd/system/postgresql.service, добавив «After=lvm-pgscan.service iscsi.service» и т. д., но это ничего не изменило.

Есть идеи ?

решение1

Судя по строке комментария, похоже, что редактирование /usr/lib/systemd/system/postgresql.serviceисправило After=local-fs.targetситуацию. Подсказкой для меня было сообщение:

postgresql-check-db-dir: «/var/lib/pgsql/data» отсутствует или пуст

что подразумевало, что postgres пытался запуститься до того, как /varбыл смонтирован. Добавление afterограничения заставляет systemd ждать, пока локальные файловые системы не будут смонтированы, прежде чем запускать postgres.

Связанный контент