С ошибкой вида «Служба была запущена и автоматически остановлена»
Отмазка/Disclaimer: всё что вы делаете, вы делаете на свой страх и риск. Нникакойтветственности за результат я не несу.
Причина, в 99% случаев: некорректное завершение работы.
Не экономьте на ИБП, и мониторинге. Следите за состоянием батареи ИБП.
Реже — причина сбой диска. Развитая инфраструктура без мониторинга — бомба замедленного действия. Следите за состоянием серверов.
В любом случае, PostgreSQL очень надёжен, и постарается сделать всё, чтобы баз не сломались и данные не потерялись, но может быть всякое. По этому, в большинстве случаев, служба не остановилась, просто запускается слишком долго, и Windows, не получив ответа, считает, что что-то пошло не так.
Это надо проверить.
- Запустите диспетчер задач, и убедитесь, что процессы postgresql.exe запущены

- Если видите процессы, PostgreSQL либо в процессе старта, либо уже работает. Проверяйте логи (логи лежат в рабочем каталоге кластера, в папке log). Где рабочий каталог кластера, можно посмотреть в свойствах службы, параметр в конце строки запуска.

- Отсортируйте файлы логов по дате, и откройте последний. 99% вы увидите там

- Дождитесь пока PostgreSQL не перестанет сыпать строками вида:
FATAL: the database system is starting up
DETAIL: Consistent recovery state has not been yet reached
FATAL: the database system is not yet accepting connections
Скорее всего, лог перестанет часто обновляться, после того, как закончится autovacuum, после проверки целостности. Как-то так
Это значит — сервер запустился, и можно войти в базу 1С
Теперь осталось только перезапустить PostgreSQL так, чтобы работал pg_ctl и Windows считала, что служба работает.
Обратите внимание: если сервер не придёт в рабочее состояние, и история в логе не изменится, дальше ничего делать нельзя. Всё плохо, идите восстанавливаться из бэкапа.
Если заработало, можно перезапустить PostgreSQL:
- Запустите командную строку «от имени администратора»
- В командной строке перейдите в каталог PostgreSQL ((как правило
C:\Program Files\PostgreSQL\%номер_версии%\bin)
- Выполните команду:
pg_ctl stop -D %путь_к_рабочему_каталогу_кластера% -m fast -W
//Обратите внимание, в пути к рабочему каталогу кластера все обратные слэши меняются на прямые. т.е., вместо F:\PGDATA пишем F:/PGDATA - Дождитесь, пока команда отработает, выдохните ещё полминуты
- Перейдите в оснастку «Службы» и запустите PostgreSQL. Если с данными всё хорошо, служба нормально запустится, и всё заработает.