Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

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

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


Информация

Для любых версий PostgreSQL:

  • 8.X
  • 9.X
  • 11.X


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

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

Image Added

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

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

Блок кода
languagebash
titletheme1.Midnight
set PGDATA=%SET_POSTGRES_BIN%/../data/

-Image Added

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

Блок кода
languagebash
titletheme2.Midnight
%SET_POSTGRES_BIN%/pg_ctl.exe status

-Image Added

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

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

Блок кода
languagebash
titletheme3.Midnight
%SET_POSTGRES_BIN%/pg_ctl.exe stop -m fast

...

Image Added

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

Блок кода
languagebash
titletheme4.Midnight
%SET_POSTGRES_BIN%/pg_ctl.exe start

-Image Added

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

Блок кода
languagebash
title5.
%SET_POSTGRES_BIN%/pg_ctl.exe stop -m fast

-Image Added

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

Блок кода
languagebash
themeMidnight
title6Для PostgreSQL 9.4
net start postgresql-x64-9.4


Блок кода
languagebash
themeMidnight
titleДля PostgreSQL 11
net start postgresql-x64-11

Image Added

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

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

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

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

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

Image Added

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

Image Added

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

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

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

Image Added

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