Публичное пространство

ОС Windows: Не запускается служба PostgreSQL после аварийного выключения или перезагрузки сервера

Инцидент: в ситуации, когда сервер был выключен аварийно, через кнопку выключения или при отсутствии электропитания, то после его включения служба PostgreSQL в некоторых случаях не запускается.

Для версий PostgreSQL:

  • 9.X
  • 11.X

Некорретное завершение работы службы

Как исправить:

1. Запустите сеанс командной строки от Администратора.

2. Выполните последовательно следующие команды и внимательно следите за их работой.

3. Определить домашний каталог PostgreSQL.

set PGDATA=%SET_POSTGRES_BIN%/../data/

4. Проверьте реальный статус экземпляра службы PostgreSQL.

%SET_POSTGRES_BIN%/pg_ctl.exe status

5. Выполните команду для полной остановки процесса PostgreSQL.

Следующими командами выполняется корректный выход из рабочего состояния сервера СУБД и его запуск.

%SET_POSTGRES_BIN%/pg_ctl.exe stop -m fast

6. Запустите приложение СУБД.

%SET_POSTGRES_BIN%/pg_ctl.exe start

7. После этого заново остановите процесс. Повтор данного шага вызван тем, что таким образом запуска приложение сервера СУБД корректно завершит недостающие транзакции.

5.
%SET_POSTGRES_BIN%/pg_ctl.exe stop -m fast

8. После выполненных шагов по перезапуску и правильной остановке экземпляра СУБД запустите службу PostgreSQL.

Для PostgreSQL 9.4
net start postgresql-x64-9.4
Для PostgreSQL 11
net start postgresql-x64-11

Служба не запускается. Есть сообщения об ошибках. Отсутствуют исполняемые файлы и DLL-библиотеки СУБД

В некоторых случаях после аварийной перезагрузки или в результате срабатывания антивирусных программ при запуске ОС Windows несколько файлов, которые необходимы для работы СУБД PostgreSQL могут отсутствовать. Это может объясняться критическим сбоем ОС.

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

1. Запустите скрипт, с помощью которого, проверьте, что для данной версии СУБД присутствуют все компоненты и файлы, которые входят в состав.

2. Скачайте и разместите файл скрипт в папку с PostgreSQL: {Disk}:/Папка_PostgreSQL/bin/.

3. Запустите файл скрипта. В результате выполнения будет сформирован файл отчета report.txt.

4. Откройте файл отчета и проверьте, что все компоненты присутствуют.

Обязательно должны присутствовать такие библиотеки и исполняемые файлы, а также все библиотеки DLL.

  • libintl-9.dll
  • pg_ctl.exe
  • postgres.exe
  • psql.exe

5. Если какие-либо файлы отсутствуют. Тогда загрузите архив для соответствующей версии PostgreSQL и скопируйте недостающие файлы в папку СУБД {Disk}:/Папка_PostgreSQL/bin/.

6. После копирования недостающих файлов:

  1. Остановите службы сервера приложений SetRetail10 и МУК.
  2. Запустите службу PostgreSQL.
  3. Запустите службы сервера приложений SetRetail10 и МУК.

Дополнительная информация

Сравнительная таблица списка исполняемых файлов в версиях PostgreSQL

PostgreSQL 9.4PostgreSQL 11.7
clusterdb.execlusterdb.exe
createdb.execreatedb.exe
createlang.execreateuser.exe
createuser.exedropdb.exe
dropdb.exedropuser.exe
droplang.exeecpg.exe
dropuser.exeicudt53.dll
ecpg.exeicuin53.dll
iconv.dllicuio53.dll
initdb.exeicule53.dll
isolationtester.exeiculx53.dll
libeay32.dllicutest53.dll
libintl-8.dllicutu53.dll
libpq.dllicuuc53.dll
libxml2.dllinitdb.exe
libxslt.dllisolationtester.exe
oid2name.exelibcrypto-1_1-x64.dll
pg_archivecleanup.exelibcurl.dll
pg_basebackup.exelibcurl.lib
pg_config.exelibecpg.dll
pg_controldata.exelibecpg_compat.dll
pg_ctl.exelibiconv-2.dll
pg_dump.exelibintl-9.dll
pg_dumpall.exelibpgtypes.dll
pg_isolation_regress.exelibpq.dll
pg_isready.exelibssl-1_1-x64.dll
pg_receivexlog.exelibwinpthread-1.dll
pg_recvlogical.exelibxml2.dll
pg_regress.exelibxslt.dll
pg_regress_ecpg.exeoid2name.exe
pg_resetxlog.exepg_archivecleanup.exe
pg_restore.exepg_basebackup.exe
pg_standby.exepg_config.exe
pg_test_fsync.exepg_controldata.exe
pg_test_timing.exepg_ctl.exe
pg_upgrade.exepg_dump.exe
pg_xlogdump.exepg_dumpall.exe
pgAdmin3.exepg_isolation_regress.exe
pgbench.exepg_isready.exe
postgres.exepg_receivewal.exe
psql.exepg_recvlogical.exe
reindexdb.exepg_regress.exe
ssleay32.dllpg_regress_ecpg.exe
stackbuilder.exepg_resetwal.exe
vacuumdb.exepg_restore.exe
vacuumlo.exepg_rewind.exe
wxbase28u_net_vc_custom.dllpg_standby.exe
wxbase28u_vc_custom.dllpg_test_fsync.exe
wxbase28u_xml_vc_custom.dllpg_test_timing.exe
wxmsw28u_adv_vc_custom.dllpg_upgrade.exe
wxmsw28u_aui_vc_custom.dllpg_verify_checksums.exe
wxmsw28u_core_vc_custom.dllpg_waldump.exe
wxmsw28u_html_vc_custom.dllpgbench.exe
wxmsw28u_stc_vc_custom.dllpostgres.exe
wxmsw28u_xrc_vc_custom.dllpsql.exe
zic.exereindexdb.exe
zlib1.dllstackbuilder.exe












vacuumdb.exe
vacuumlo.exe
wxbase28u_net_vc_custom.dll
wxbase28u_vc_custom.dll
wxbase28u_xml_vc_custom.dll
wxmsw28u_adv_vc_custom.dll
wxmsw28u_aui_vc_custom.dll
wxmsw28u_core_vc_custom.dll
wxmsw28u_html_vc_custom.dll
wxmsw28u_xrc_vc_custom.dll
zic.exe
zlib1.dll


© 1994-2023, ООО «Кристалл Сервис Интеграция».
Все права защищены..

Политика обработки персональных данных