Установка PostgreSQL без ошибок завершается в Windows в определенном каталоге - PullRequest
0 голосов
/ 24 мая 2019

Мне нужно установить Postgresql 11.3 на Windows 10 с NSIS в одностороннем режиме, для этого я использую установщик EnterpriseDB (https://www.enterprisedb.com/downloads/postgres-postgresql-downloads),, но происходит сбой с сообщением об ошибке «error.install.directory.nondefault». Это Скрипт nsis отлично работает с установщиком Windows PosgreSQL 9.3.

Этот простой скрипт установки ниже не работает на моем ПК для разработки, но работает на некоторых других ПК:

;--------------------------------
; The name of the installer
Name "PostgreSQL 11 Installer"

; The file to write
OutFile "PostgreSQL11Installer.exe"

; Request application privileges
RequestExecutionLevel admin

;--------------------------------

;PostgreSQL Installation
Section "" 
  ExecWait 'C:\tmp\postgresql-11.3-1-windows-x64.exe  --unattendedmodeui minimal --mode unattended  --prefix C:\PostgreSQL11 --datadir C:\PostgreSQL11\data --serverport 5432 --superpassword mypassword'
SectionEnd

В папке% TEMP% в файле bitrock_installer_xxxx.log нет других сообщений об ошибках:

Log started 05/27/2019 at 12:24:43
Preferred installation mode : unattended
Trying to init installer in mode unattended
Mode unattended successfully initialized
Executing cscript //NoLogo "C:\Users\nducoin\AppData\Local\Temp\postgresql_installer_4263a06887\prerun_checks.vbs"
Script exit code: 0

Script output:
 The scripting host appears to be functional.

Script stderr:


[12:24:45] Using branding: PostgreSQL 11
Executing C:\Users\nducoin\AppData\Local\Temp/postgresql_installer_4263a06887/temp_check_comspec.bat 
Script exit code: 0

Script output:
 "test ok"

Script stderr:


error.install.directory.nondefault

Есть ли способ иметь больше журналов для устранения этой проблемы? Кто-нибудь знает, что может пойти не так?

1 Ответ

0 голосов
/ 07 июня 2019

С https://postgresrocks.enterprisedb.com/t5/PostgreSQL/Postgresql-11-command-line-installation-fails-on-Windows-for-non/m-p/3698#M299

Сообщение об ошибке error.install.directory.nondefault появляется, когда:

  • папка, в которой установлен PostgreSQL, не пуста
  • языковой стандарт не английский
  • папка установки не является папкой установки по умолчанию
  • PostgreSQL еще не установлен.

Когда он уже установлен, возникает ошибка, если предыдущая установка не была сделана в каталоге по умолчанию.

Проблема локализации - это ошибка в установщике PostgreSQL, остальное - искомыйповедение.

Чтобы получить правильное сообщение об ошибке, нужно перевести язык на английский: postgresql-11.3-1-windows-x64.exe --unattendedmodeui minimal --mode unattended --prefix «C: \ PostgreSQL11»--datadir «C: \ PostgreSQL11 \ data» --serverport 5432 - тест суперпользователя --installer-language -en

...