Установка PostgreSQL 9 в Windows: «Невозможно записать путь среды TEMP» - PullRequest
23 голосов
/ 07 марта 2011

Я пытаюсь установить PostgreSQL 9 (postgresql-9.0.3-1-windows.exe) на мой компьютер с WinXP и получить в начале следующую ошибку:

Unable to write inside TEMP environment variable path.

Некоторые погуглили и дали несколько советов, которые предлагали Windows Scripting Host может быть отключен . Я проверил, и WSH определенно включен, так что это должно быть что-то еще. Вопрос в том, что?

Я вижу файл с именем prerun_checks.vbs , созданный в% TEMP%, и когда я пытаюсь запустить его вручную, я получаю следующее:

enter image description here

Что похоже на ошибку прав доступа. Тем не менее, я администратор, и я полностью контролирую временную папку, и она все еще не работает.

Любая помощь приветствуется.

Ответы [ 22 ]

32 голосов
/ 27 июня 2012

В моем случае решение было связано с NotePad++, являющимся приложением по умолчанию для открытия файлов .vbs. Если у вас такая же ситуация, вот сложное решение:

http://igordcard.blogspot.co.il/2012/03/unable-to-write-inside-temp-environment.html

В двух словах, в реестре вам нужно перейти на HKEY_CLASSES_ROOT\.vbs и установить запись (Default) обратно в строку VBSFile.

7 голосов
/ 07 марта 2011

Когда я заканчивал свой вопрос, описанный выше, наш специалист по ИТ пришел и сразу понял, в чем проблема: это McAfee.Он запрещает запуск что-либо в папке TEMP, включая сценарии Windows Scripting Host.Отключение McAfee на время установки устранило проблему для меня.

Так что, если вы видите эту проблему, попробуйте отключить антивирус.

5 голосов
/ 18 декабря 2012

Ответ на следующей странице помог мне. http://forums.enterprisedb.com/posts/list/3040.page

  1. run-> regedit и создайте резервную копию реестра, используя экспорт
  2. HKEY_LOCAL_MACHINE-> ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ-> Классы-> CLSID-> B54F3741-5B07-11cf-A4B0-00AA004A55E8} -> InprocServer32
  3. Изменить запись реестра с новым значением C: \ Windows \ System32 \ vbscript.dll

Фактически я обнаружил, что есть 3 записи HKEY_LOCAL_MACHINE-> ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ-> Классы-> CLSID-> B54F3741-5B07-11cf-A4B0-00AA004A55E8}, и установил первую, как указано выше, она работает.

3 голосов
/ 23 мая 2011

Если кто-то еще ищет информацию по этому вопросу и ему здесь не повезло, вы можете посмотреть:

http://wiki.postgresql.org/wiki/Troubleshooting_Installation

Для уточнения списка рассылки, пожалуйста, прочитайте:

http://wiki.postgresql.org/wiki/Guide_to_reporting_problems

2 голосов
/ 21 октября 2016

Все вышеперечисленное у меня не сработало. Я получаю сообщение об ошибке вроде:

Вывод скрипта: Ошибка CScript: на этом компьютере отключен доступ к хосту скриптов Windows. За подробностями обращайтесь к администратору.

так что после нескольких поисков я нашел решение: Перейдите к следующей клавише:

HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows Script Host \ Настройки

На правой панели вы увидите Включено. Если вы видите запись 0, это означает, что доступ к Windows Script Host отключен на вашем компьютере с Windows.

Дважды щелкните по нему и укажите значение 1, чтобы включить его.

Значение 1 включит Windows Script Host Значение 0 отключит Windows Script Host.

для Windows 10 перейдите к

HKEY_CURRENT_USER \ Программное обеспечение \ Microsoft \ Windows Script Host \ Настройки

2 голосов
/ 11 октября 2014

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

В итоге, загрузите двоичный файл из здесь , разархивируйте его, перейдите в папку pgsql, создайте там каталоги log и data, а затем откройте командную строку,перейдите туда, где находится папка pgsql\bin, и запустите initdb -U postgres -A password -E utf8 -W -D POSTGRESQL_ROOT\data

. Вы можете запустить и остановить сервер, выполнив

"POSTGRESQL_ROOT/bin/pg_ctl" -D "POSTGRESQL_ROOT/data" -l "POSTGRESQL_ROOT/log/pgsql.log" start

и

"POSTGRESQL_ROOT/bin/pg_ctl" -D "POSTGRESQL_ROOT/data" -l "POSTGRESQL_ROOT/log/pgsql.log" stop

гдеPOSTGRESQL_ROOT - это полный путь к папке pgsql.

1 голос
/ 24 июня 2014

В моем случае я удалил утилиту для удаления McAfee MCPR (удаление продуктов McAfee Consumer Product) , которая очищала некоторые хвосты после удаления McAfee.

Некоторые записи реестра, в которых ранее было InprocServer32значения типа 'c:\program files\common files\mcafee\systemcore\...' вернулись к исходным значениям:

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{B54F3741-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32\(default) = vbscript.dll
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Wow6432Node\CLSID\{B54F3741-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32\(default) = C:\Windows\SysWow64\vbscript.dll

После этого я успешно установил PostgreSQL 9.3

1 голос
/ 11 марта 2014

У меня возникла эта проблема при попытке установить 32-разрядную версию на 64-разрядную версию Windows 7.

Попытка установки 64-разрядной версии не показала ошибок, но решения, представленные другими, также действительны.

1 голос
/ 09 сентября 2013

В моем случае это было другое приложение, которое вызвало проблему.Не Блокнот ++.Для тех, кто сталкивается с этой проблемой, вы можете диагностировать ее, сначала удалив все файлы в C:\Documents and Settings\UserName\Local Settings\Temp, чтобы вы могли легко найти bitrock_installer.log при повторной установке postgresql и просмотре инструкций в нем.Изменение ключа (по умолчанию) в разделе реестра HKEY_CLASSES_ROOT, .vbs на VBSFile решило эту проблему.

1 голос
/ 10 июля 2016

Моя проблема была в Smad-Av, которая отключала запуск сценариев Windows, только после того, как я прочитал эту тему.Я просто щелкнул правой кнопкой мыши значок Smad-Av и выбрал Разрешить Windows-Script & Office-Macro (постоянный) .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...