Проблемы с установкой PostgreSQL 9.2

Я'пытался установить 64-битную версию PostgreSQL 9.2 для Windows на свою машину (Windows 7 64bit) и получил эту ошибку:

Переменная среды COMPSPEC, похоже, не указывает на cmd.exe или в ней присутствует корявое двоеточие.

Я установил его от имени администратора.

Я отключил антивирус (Microsoft Security Essentials) и брандмауэр.

Запускаю:

"%COMSPEC%" /C "echo test ok"

возвращено test ok.

Я проверил системные переменные окружения на наличие двоеточия и не нашел его.

Затем я установил 32-разрядную версию и смог дойти до конца установки с другим сообщением об ошибке, гласящим: Problem running post-install step. Установка может завершиться неправильно Ошибка чтения C:\Program Files (x86)\PostgreSQL\9.2\data\postgresql.conf, но в этом каталоге нет файла postgresql.conf. Приложение установилось, но когда я пытаюсь подключиться к серверу с красным X на нем, внизу появляется надпись fail, и он не подключается после того, как я ввожу свой пароль.

Как я могу подключиться к этому серверу?

Это не COMPSPEC, это просто COMSPEC. Пожалуйста, покажите вывод:

echo %COMSPEC%

Обратите внимание, что COMSPEC может быть установлен на что-то другое в учетной записи администратора, от имени которой вы запускаете программу установки. Я не знаю точно, как это выяснить, но это может появиться в журнале программы установки PostgreSQL, поэтому загрузите его и дайте ссылку на него в своем сообщении. Смотрите Reporting an installation error для получения информации о том, где взять журнал программы установки.

См. статью FAQ по PostgreSQL для Windows Проверьте переменную окружения COMSPEC.

Here's a report I made с предложением о том, что программа установки должна явно проверять это, и here's my blog post on the topic.

Комментарии (10)

У меня такая же проблема, и я обнаружил в журнале:

Script stderr: 'C:\Users\S300' не распознается как внутренняя или внешняя команда, операционной программой или пакетным файлом.

Ошибка выполнения C:\Users\S300 (i5)\AppData\Local\Temp/postgresql_installer_56caeadbd6/temp_check_comspec.bat : 'C:\Users\S300' не распознается как внутренняя или внешняя команда, операционной программой или пакетным файлом.

Я изменил в пользовательских переменных TEMP на D:\TEMP и TMP на D:\TEMP. И решил свою проблему.

Комментарии (0)

У меня была похожая проблема. После установки в папке data не было файла postgres.conf. В ней была только одна папка с именем "pg_log". Я описал решение, которое я использовал, здесь: https://stackoverflow.com/questions/16730405/postgress-instalation-error-reading-file-postgresql-conf/17249527#17249527.

В принципе, было бы полезно проверить, есть ли у пользователя полные права на папку postgres, и снова запустить команды "init_db" и "pg_ctl start". Если путь содержит символ пробела, попробуйте использовать относительный путь для аргумента pg_ctl data folder.

Комментарии (0)