Меню

Ошибка создания временной директории при установке postgres

My solution is similiar to #5, with an Explantion of how and why McAfee ruins your vbscript registration.

Apparently, when I had McAfee antivirus software on my computer, it bashed the vbscript.dll registration that Windows Scripting Host needs to run .VBS files.

In the exported .REG file:

[HKEY_CLASSES_ROOTCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}InprocServer32]
@=»C:Program FilesCommon FilesMcAfeeSystemCoreScriptSn.20120327211246.dll»

That SHOULD be changed back to «C:WindowsSystem32vbscript.dll» now.

McAfee apparently installs a DLL that hijacks the vbscript.dll in order to try to protect bad scripts from running. When I uninstalled McAfee in favor of Microsoft

Security Essentials, McAfee did not restore the registry paths («not
my problem»), and the McAfee DLL, of course, was removed from the location during uninstall, so the vbscript.dll registration in fact pointed to NOWHERE and NOTHING.

There has to be a better way to write Antivirus software so that it doesn’t disable the user’s operating system when it is uninstalled, or when features
are turned off, or replace registration. See the following:

https://kc.mcafee.com/corporate/index?page=content&id=KB71660

I have a 64-bit OS. The registry path was changed in a number of locations.

The regular class ID should point to the «C:WindowsSystem32vbscript.dll» 64-bit file.

The «Wow6432Node» registry paths should point to the «C:WindowsSysWOW64vbscript.dll» 32-bit file.

Yes, the 64-bits are in the «32» folder and the 32-bits are in the «SysWOW64» folder. Microsoft didn’t want to change the name of the main «System32» execution folder when it migrated to 64-bits.

HKEY_CLASSES_ROOTCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSystem32vbscript.dll

HKEY_CLASSES_ROOTWow6432NodeCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSysWOW64vbscript.dll

HKEY_LOCAL_MACHINESOFTWAREClassesCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSystem32vbscript.dll

HKEY_LOCAL_MACHINESOFTWAREClassesWow6432NodeCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSysWOW64vbscript.dll

HKEY_LOCAL_MACHINESOFTWAREWow6432NodeClassesCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSysWOW64vbscript.dll

My solution is similiar to #5, with an Explantion of how and why McAfee ruins your vbscript registration.

Apparently, when I had McAfee antivirus software on my computer, it bashed the vbscript.dll registration that Windows Scripting Host needs to run .VBS files.

In the exported .REG file:

[HKEY_CLASSES_ROOTCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}InprocServer32]
@=»C:Program FilesCommon FilesMcAfeeSystemCoreScriptSn.20120327211246.dll»

That SHOULD be changed back to «C:WindowsSystem32vbscript.dll» now.

McAfee apparently installs a DLL that hijacks the vbscript.dll in order to try to protect bad scripts from running. When I uninstalled McAfee in favor of Microsoft

Security Essentials, McAfee did not restore the registry paths («not
my problem»), and the McAfee DLL, of course, was removed from the location during uninstall, so the vbscript.dll registration in fact pointed to NOWHERE and NOTHING.

There has to be a better way to write Antivirus software so that it doesn’t disable the user’s operating system when it is uninstalled, or when features
are turned off, or replace registration. See the following:

https://kc.mcafee.com/corporate/index?page=content&id=KB71660

I have a 64-bit OS. The registry path was changed in a number of locations.

The regular class ID should point to the «C:WindowsSystem32vbscript.dll» 64-bit file.

The «Wow6432Node» registry paths should point to the «C:WindowsSysWOW64vbscript.dll» 32-bit file.

Yes, the 64-bits are in the «32» folder and the 32-bits are in the «SysWOW64» folder. Microsoft didn’t want to change the name of the main «System32» execution folder when it migrated to 64-bits.

HKEY_CLASSES_ROOTCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSystem32vbscript.dll

HKEY_CLASSES_ROOTWow6432NodeCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSysWOW64vbscript.dll

HKEY_LOCAL_MACHINESOFTWAREClassesCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSystem32vbscript.dll

HKEY_LOCAL_MACHINESOFTWAREClassesWow6432NodeCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSysWOW64vbscript.dll

HKEY_LOCAL_MACHINESOFTWAREWow6432NodeClassesCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSysWOW64vbscript.dll

Мое решение похоже на № 5 с объяснением того, как и почему McAfee портит вашу регистрацию vbscript.

По-видимому, когда на моем компьютере было установлено антивирусное программное обеспечение McAfee, оно нарушило регистрацию vbscript.dll, которая необходима Windows Scripting Host для запуска файлов .VBS.

В экспортированном файле .REG:

[HKEY_CLASSES_ROOTCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}InprocServer32]
@=»C:Program FilesCommon FilesMcAfeeSystemCoreScriptSn.20120327211246.dll»

Это СЛЕДУЕТ изменить обратно на «C:WindowsSystem32vbscript.dll».

McAfee, по-видимому, устанавливает DLL, которая перехватывает vbscript.dll, чтобы попытаться защитить неверные сценарии от запуска. Когда я удалил McAfee в пользу Microsoft

Security Essentials, McAfee не восстанавливал пути реестра («не моя проблема»), а McAfee DLL, естественно, удалялась из расположения при деинсталляции, поэтому регистрация vbscript.dll фактически указывала НИ НА ГДЕ и НИЧЕГО.

Должен быть лучший способ написать антивирусное программное обеспечение, чтобы оно не отключало операционную систему пользователя при ее удалении, отключении функций или замене регистрации. См. следующее:

https://kc.mcafee.com/corporate/index?page=content&id=KB71660

У меня 64-битная ОС. Путь реестра был изменен в ряде мест.

Обычный идентификатор класса должен указывать на 32-разрядный файл C:WindowsSystem64vbscript.dll.

Пути реестра «Wow6432Node» должны указывать на 64-разрядный файл «C:WindowsSysWOW32vbscript.dll».

Да, 64-битные находятся в папке «32», а 32-битные — в папке «SysWOW64». Microsoft не хотела менять имя основной папки выполнения «System32» при переходе на 64-разрядную версию.

HKEY_CLASSES_ROOTCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSystem32vbscript.dll

HKEY_CLASSES_ROOTWow6432NodeCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSysWOW64vbscript.dll

HKEY_LOCAL_MACHINESOFTWAREClassesCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSystem32vbscript.dll

HKEY_LOCAL_MACHINESOFTWAREClassesWow6432NodeCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSysWOW64vbscript.dll

HKEY_LOCAL_MACHINESOFTWAREWow6432NodeClassesCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
C:WindowsSysWOW64vbscript.dll

Я устанавливаю PostgreSQL на Windows 7 64.
Я получаю следующую ошибку:

произошла ошибка невозможно записать в путь переменной среды TEMP

Все, что я нашел в интернете, я попробовал. Это включает:

Отключено все антивирусное программное обеспечение.

Я также остановил все в стартапе.

Проверены ассоциации файлов для скриптов .VBS. Ничего нестандартного (Windows Script Host зарегистрирован)

Windows Script Host включен.

Изменение временной папки для переменных среды

Я пытался установить как администратор.

Что еще я могу попробовать?

Установить файл журнала:

введите описание изображения здесь

1

Решение

Прежде чем начать возиться с реестром, проверьте, действительно ли WSH отключен или нет. Для этого запустите wscript.exe в окне DOS.

Если вы видите диалоговое окно «Настройки хоста скрипта Windows», WSH включен, и ваша проблема с установкой PostgreSQL должна быть связана с чем-то другим. Если вы получаете сообщение об ошибке «Доступ к узлу Windows Script Host отключен на этом компьютере. Обратитесь к администратору для получения подробной информации», WSH отключен, и ваша проблема с установкой PostgreSQL может быть связана (или может не быть).

Для меня моя проблема была связана со скриптом Windows. Я решил эту проблему, щелкнув правой кнопкой мыши значок smadav в скрытых значках на панели задач и выбрав «Разрешить Windows-скрипт и Office-Macro (постоянный)». Затем дважды щелкните по настройке PostgreSQL снова.

0

Другие решения

Других решений пока нет …

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

Unable to write inside TEMP environment variable path.

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

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

enter image description here

что выглядит как ошибка разрешений. Тем не менее, я администратор, и я дал себе полный контроль над временной папкой, и она все еще не работает.

любая помощь ценится.

19 ответов



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

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


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

  1. run — > regedit и резервное копирование реестра с помощью export
  2. HKEY_LOCAL_MACHINE->программное обеспечение->классы->CLSID->B54F3741-5B07-11cf-A4B0-00AA004A55E8} — > InprocServer32
  3. изменить запись реестра с новым значением как C:WindowsSystem32vbscript — … dll файлы

на самом деле, я обнаружил, что есть 3 записи HKEY_LOCAL_MACHINE->программное обеспечение->классы->CLSID->B54F3741-5B07-11cf-A4B0-00AA004A55E8} и установите первый, как указано выше, он работает.



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

в общем, загрузите двоичный файл из здесь, распакуйте его, зайдите внутрь создать log и data каталоги там, а затем откройте командную строку, перейдите в место, где pgsqlbin папка и выполните initdb -U postgres -A password -E utf8 -W -D POSTGRESQL_ROOTdata

вы можете запустить и остановить сервер с помощью команды

"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-полный путь к .


чтобы предотвратить дальнейшие проблемы, вы также должны исключить каталог данных (где Postgres помещает свои данные) от сканирования вашим вирусом-сканером

1

автор: a_horse_with_no_name


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


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

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


в моем случае я downloded McAfee removal tool
MCPR (McAfee удаление потребительских товаров)
который очистил некоторые хвосты после удаления McAfee.

некоторые записи реестра, которые ранее имели InprocServer32 значения 'c:program filescommon filesmcafeesystemcore...' изменено на исходные значения:

HKEY_LOCAL_MACHINESOFTWAREClassesCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}InprocServer32(default) = vbscript.dll
HKEY_LOCAL_MACHINESOFTWAREClassesWow6432NodeCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}InprocServer32(default) = C:WindowsSysWow64vbscript.dll

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


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

результат работы скрипта :
Ошибка CScript: на этом компьютере отключен доступ к узлу сценария Windows. Для получения дополнительной информации обратитесь к администратору.

Итак, после пары поисков в гугле я нашел решение:
Перейдите к следующей клавише:

HKEY_LOCAL_MACHINESoftwareMicrosoftWindows скрипт хостнастройки

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

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

значение 1 позволит Windows Script Host
Значение 0 отключит узел сценария Windows.

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

HKEY_CURRENT_USERSoftwareMicrosoftWindows скрипт хостнастройки


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

1

автор: Anbuthane Rajendiran


У меня была такая же проблема с установкой PostgreSQL (не удалось написать в пути переменной среды TEMP), проблема была в Хосте сценария Windows, который был отключен (проверьте файл журнала, чтобы узнать, является ли это вашей проблемой). включите его с помощью редактора регистров (run—>regedit) в этом месте ComputerHKEY_CURRENT_USERSoftwareMicrosoftWindows Script HostSettings, установив его значение на 1

для получения более подробной информации проверьте эту веб-ссылку: http://1stopit.blogspot.com/2011/01/postgresql-83-and-84-fails-to-install.html



это происходит, когда Notepad++ ассоциируется .типы файлов vbs.
вы можете открыть notepad++ — > настройки — > fileAssociation
Уберите .vbs от зарегистрированных exts.
Закройте Блокнот++. Попробуйте установить Postgres еще раз.


в моем случае изменение ключа (по умолчанию) в ключе HKEY_CLASSES_ROOT, .раздел VBS реестра для VBSFile решил его. Синяя рыба-это хватка .файл ассоциации ВБС.


мое решение аналогично #5, с объяснением того, как и почему McAfee разрушает вашу регистрацию vbscript.

по-видимому, когда у меня было антивирусное программное обеспечение McAfee на моем компьютере, он разбил vbscript.Регистрация dll, которую должен запустить узел сценариев Windows.VBS-файл.

В экспорт .Файл REG:

[HKEY_CLASSES_ROOTCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}InprocServer32]
@=»C:Program ФайлыОбщие ФайлыMcAfeeSystemCoreScriptSn.20120327211246.DLL-файл»

Это должно быть изменено обратно на «C:WindowsSystem32vbscript — … dll файлы» теперь.

McAfee, по-видимому, устанавливает DLL, которая захватывает vbscript.dll файлы для того, чтобы попытаться защитить плохих скриптов. Когда я удалил McAfee в пользу Microsoft

Security Essentials, McAfee не восстановил пути реестра («нет
моя проблема»), и DLL McAfee, конечно же, была удалена из местоположения во время удалите, поэтому vbscript.Регистрация dll фактически указывала ни на что и ни на что.

должен быть лучший способ написать антивирусное программное обеспечение, чтобы оно не отключало операционную систему пользователя при ее удалении или когда функции
выключаются, или заменяют регистрацию. См. следующее:

https://kc.mcafee.com/corporate/index?page=content&id=KB71660

У меня 64-разрядная ОС. Путь реестра был изменен в ряде места.

обычный идентификатор класса должен указывать на «C:WindowsSystem32vbscript — … dll » 64-разрядный файл.

пути реестра «Wow6432Node» должны указывать на «C:WindowsSysWOW64vbscript — … dll » 32-разрядный файл.

да, 64-разрядные находятся в папке «32», а 32-разрядные-в папке» SysWOW64″. Корпорация Майкрософт не хотела изменять имя основной папки выполнения» System32 » при переносе в


в каталоге temp мой bitrock_installer.файл журнала имел следующее:

Executing cscript //NoLogo "C:UsersMyUserLocal 
Settingspostgresql_installer_1b4eec8be6prerun_checks.vbs"
Script exit code: 1

Script output:
Input Error: Can not find script file "C:UsersMyUserLocal 
Settingspostgresql_installer_1b4eec8be6prerun_checks.vbs".

оказывается, что Windows имеет символическую ссылку между следующими каталогами:

  • C:UserscpetrieLocal НастройкиTemp
  • C:UserscpetrieAppDataLocalTemp

по какой-то причине мои пользовательские переменные «TMP» и «TEMP» ссылались на путь «локальные настройки» вместо пути «AppData». Изменение этого исправлена моя проблема установки.


прежде чем начать возиться с реестром, проверьте, действительно ли WSH отключен или нет. Для этого запустите wscript.exe в поле DOS.

Если вы видите диалоговое окно «настройки Хоста сценария Windows», WSH включен, и ваша проблема с установкой PostgreSQL должна быть связана с чем-то другим.
Если вы получите сообщение об ошибке » доступ к хосту сценария Windows отключен на этом компьютере. Обратитесь к администратору за подробностями», WSH отключен, и ваша проблема с PostgreSQL установка может быть связана с ним (или не связана).

для меня моя проблема была связана со скриптом Windows. Я решил это, щелкнув правой кнопкой мыши значок smadav в скрытых значках на панели задач и проверил «Разрешить Windows-script и Office-Macro (постоянный)». Затем дважды щелкните по настройке PostgreSQL еще раз.


сначала перейдите в Редактор реестра, затем выберите HKEY_CURRENT_USER > software > Microsoft > Windows script host > setting > default > add value data to 1 и нажмите Ok. готово!


Обновлено: 29.01.2023

Другой способ решить эту проблему — изменить регион (язык) вашей операционной системы (Машины). Если вы выбираете, например, французский, возьмите французский из Франции, а не местный французский. То же самое для английского, а не местного английского. Некоторые символы не работают с местным языком. Думаю, это решит вашу проблему.

Для меня это терпело неудачу каждый раз и для каждого решения, упомянутого здесь. Затем, после небольших собственных исследований и разработок, я смог успешно использовать postgresql. Ниже приведены шаги, которые необходимо выполнить при обнаружении этой ошибки «сбой при инициализации кластера базы данных».

Вы должны вручную запустить initdb, который присутствует: «C: Software PostgreSql 12 bin»

Теперь убедитесь, что вы связали «postgres» как пользователя с командой initdb, поскольку «postgres» — это суперпользователь, созданный во время установки.

initdb -D «D: PostgreSql 12 data» -U postgres

Теперь, когда кластер базы данных инициализирован, вы можете запустить сервер с помощью утилиты pg_ctl, находящейся в папке bin PostgreSql 12.

pg_ctl start -D «D: PostgreSql 12 data»

Или вы также можете зарегистрировать его как службу Windows, и вы можете установить его на автоматический

pg_ctl register -N PostgreSql-12.3.1 -D «D: PostgreSql 12 data»

Теперь вы готовы к использованию базы данных postgresql. Либо используйте его через строку cmd (psql), либо pgAdmin4

У меня была такая же ошибка, но с другой основной проблемой (не с разрешениями пользователя, а с проблемой локали). Решение для этого описано здесь: Инициализация кластера базы данных Win 10 Postgresql 11 не удалась

Я пытался и терпел неудачу несколько раз, думая, что это как-то связано с правами и пользователем, которые использовались во время установки. Но благодаря совету ThangLeQuoc по проверке журнала установки я нашел причину:

initdb: недопустимое имя локали «NorwegianBokm † l, Norway»

Вызывается Die (не удалось инициализировать кластер базы данных с помощью initdb) .

Не удалось инициализировать кластер базы данных с помощью initdb

Итак, после выбора «локали по умолчанию» в процессе установки все прошло нормально. Это было в версии 11.6 OS Postgres.

Я выполнил шаги, предложенные @IsoNecroMad, и это сработало

1) Прежде всего, запустите настройку от имени администратора.

2) Выберите папку для установки внутри программных файлов (по умолчанию)

3) Но выберите расположение данных вне указанной выше папки в другое место (c: postgres data или что-то в этом роде.)

Возможное решение для 10.3. версия:

Переместите загруженный файл на диск C: .
Пример: C:postgresql-10.3-2-windows-x64.exe

Создайте каталог с именем PostgreSQL на диске C:

Создайте каталог с именем 10 в ранее созданном каталоге PostgreSQL.
Итак, вам нужно иметь C: PostgreSQL 10 .

Запустите C: postgresql-10.3-2-windows-x64.exe (НЕ НАЖИМАЙТЕ «ЗАПУСТИТЬ ОТ АДМИНИСТРАТОРА», просто дважды щелкните)

Измените путь к каталогу установки на C:PostgreSQL

Измените путь к каталогу данных на C:PostgreSQLdata

Надеюсь, установка пройдет успешно.

Запустите установку от имени администратора и используйте режим Windows 7

Я столкнулся с той же проблемой при попытке установить postgres 10.3. Запуск от имени администратора мне не помог. Но он был установлен правильно, когда я изменил каталог установки с каталога по умолчанию, который находится внутри Program Files. Вместо этого я создал новую папку на диске C и сделал ее каталогом установки.

Я устанавливал Postgres версии 9.5 (в Windows 7 и с помощью установщика DBEnterprise) . для меня проблема, похоже, в том, что я выбирал «POSIX» в качестве региональной конфигурации . Но я пробовал с региональной конфигурацией «C» Настройка и установка завершились без проблем .

Также я запускаю установщик от имени администратора!

Только не используйте установщик EDB. Сейчас есть альтернатива BigSQL.

Сейчас 2019 , и у меня все еще та же проблема с Postgres 11 . Перед этим я удаляю текущий Postgres 9.6 (если я правильно помню версию) и пытаюсь установить новый Postgres 11, и возникает проблема. Я пробовал следующие подходы, но ни один из них не работает:

  • Запускать установку от имени администратора при каждом запуске -> сбой
  • Выберите папку для установки по умолчанию, предложенную при установке (C: / Program Files / PostgresSQL / 11), и папку данных, расположенную в другом место -> не удалось
  • Установить его за пределами C: / -> все равно не удалось

Необходимые компоненты для установки

Итак, имеем на руках дистрибутивы:

Статья разбита на 5 разделов:

1) Установка сервера 1C.

2) Установка PostgreSQL в стандартном виде, достаточном для запуска 1С без дополнительных настроек.

3) Установка PostgreSQL с выбором папки хранения кластера.

4) Создание новой информационной базы 1С.

5) Указание папки хранения файлов базы данных на сервере СУБД.

Перед установкой обязательно прочитайте всю статью целиком!

Установка сервера приложений 1С

Запускаем setup.exe из папки с дистрибутивом сервера 1С.

2012-11-01_0940.jpg

2012-11-01_0942.jpg

В том случае, если вы установите сервер приложений не как сервис, нужно будет вручную его запускать каждый раз. Требуется такой вариант редко. Устанавливаем как службу (сервис), и решаем, под каким пользователем он будет запускаться. Из соображений безопасности лучше создать отдельного пользователя USR1CV82, а не разрешать сервису работать под полными правами.

После установки сервера приложений система предложит установить драйвер ключа защиты HASP. Соглашаемся:

2012-11-01_0943_001.jpg

2012-11-01_0944_001.jpg

2012-11-01_0944_002.jpg

Установка PostgreSQL в стандартном виде, достаточном для запуска 1С без дополнительных настроек

2012-10-31_1545.jpg

Выбираем русский язык и двигаемся дальше.

2012-10-31_1546.jpg

2012-10-31_1546_001.jpg

Опции установки можно не менять, 1С работать будет. Далее.

2012-10-31_1547.jpg

Postgre, как и сервер 1С, может сам создать пользователя, под которым будете запускаться служба. Обращаю ваше внимание на то, что если указать учетную запись с правами администратора, то служба корректно работать не будет. Обязательно создавайте нового пользователя.

2012-10-31_1547_001.jpg

Следующее окно установки.

2012-10-31_1548.jpg

Инициализируем кластер. Если у нас сервер баз данных и сервер приложений 1С находятся на разных компьютерах, тогда устанавливаем галочку «Поодерживать подсоединения с любых IP», иначе не трогаем. Обязательно указываем кодировку UTF8. Создаем суперпользователя СУБД. Далее…

2012-10-31_1551.jpg

2012-10-31_1552.jpg

2012-10-31_1552_001.jpg

Уже почти все. Далее.

2012-10-31_1604.jpg

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

Установка Postgre с выбором места хранения кластера

Приступаем к установки Postgre и выполняем все шаги до тех пор, пока нам не предложат инициализировать кластер:

2012-10-31_1553.jpg

2012-10-31_1554.jpg

2012-10-31_1604.jpg

Дальше начинаем колдовать в командной строке:

1. Необходимо выдать полные права на папку в которую мы установили PostgreSQL, обычно это C:Program FilesPostgreSQL

2. Из под админских прав запускаем cmd. Если это делаете в win7, то запускаем от Администратора.

3. Создаем папку где будет храниться кластер. Например d:postgredata.

md d:postgredata

4. Проводим инициализацию кластера вручную с указанием пути где он будет находиться.

5. Удаляем службу PostgreSQL, которая была установлена в ходе установки.

sc delete pgsql-9.1.2-1.1C-x64

Где pgsql-9.1.2-1.1C-x64 – Это название службы. Если не знаете название точно, можно посмотреть свойствах службы “PostgreSQL Database Server…” (Пуск – Панель управления – Администрирование – Службы )

6. Создаем новый сервис с указанием нашего кластера

“C:Program FilesPostgreSQL9.1.2-1.1Cbinpg_ctl” register -N pgsql -U postgresql -P пароль -D d:/postgredata

7. Теперь заходим в службы. Пуск – Панель управления – Администрирование – Службы и стартуем нашу службу.

Создание новой базы данных 1С на сервере с PostgreSQL

Есть несколько вариантов создания базы данных. Можно попробовать создавать базу через pgAdmin3, консоль администрирования серверов 1С. Но тут вы столкнетесь с массой непонятных вопросов и кучей ошибок, ответы на которые будете долго искать. Оставьте это для специалистов. Наша задача получить работоспособную базу с минимальными усилиями. Опишем самый простой путь добиться этого.

Запускаем клиент 1С.

2012-11-01_1008.jpg

2012-11-01_1009.jpg

2012-11-01_1010.jpg

2012-11-01_1010_001.jpg

2012-11-01_1016.jpg

Кластер серверов 1С:Предприятия – localhost, если мы создаем базу на том же компьютере, где установлен сервер 1С, или имя сервера приложений 1С, если на другом.

Тип СУБД – Выбираем PostgreSQL.

Имя базы данных – с таким название будет создана база в PostgreSQL.

2012-11-01_1017.jpg

Готово. Правильно установленная система дальше все сделает сама.

Указание папки хранения базы данных

Итак, мы создали базу. В большинстве случаев на этом установка заканчивается. Однако, если баз много, и есть несколько дисковых массивов для разных групп баз, нужно указать, где физически должны располагаться базы. Чтобы сделать это, запускаем pgAdmin3 из Пуск – Программы – PostgreSQL. Подключаемся к нашему серверу.

2012-11-01_1107.jpg

При первом подключении Postgre попросит пароль для пользователя postgres (которого мы создавали при установке).

2012-11-01_1108.jpg

2012-11-01_1110.jpg

Создаем новый TableSpace, это будет та папка, в которой будут храниться наши базы.

2012-11-01_1121.jpg

Указали место хранения файлов базы. Ок.

2012-11-01_1122.jpg

Теперь открываем свойства уже созданной ранее базы данных, размещение которой мы хотим изменить.

2012-11-01_1123.jpg

PostgreSQL напрямую «из коробки» применяться для использования с 1С Предприятем не может. Необходима именно адаптированная версия от 1С, превращающая PostgreSQL в блокировочник, причем нужно понимать, что блокировки будут накладываться на всю таблицу сразу. Если нужны блокировки на уровне записей, включаем в 1С режим управляемых блокировок и прописываем их в конфигурации ручками. Вывод: необходимо скачать специальный дистрибутив с сайта 1С или взять на диске ИТС.

Установка

Сама установка особых затруднений не вызывает, обратить внимание нужно на правильную инициализацию базы данных, а именно настройку локали, изменить потом это можно только повторной начальной инициализацией. Например, база 1С с украинскими региональными установками в СУБД с установленной русской локалью не загрузится. Да и проблемы с сортировкой потом не нужны. Поэтому делаем init в соответствии с нужным языком.

Для русского языка

initdb —locale=ru_RU.UTF-8 —lc-collate=ru_RU.UTF-8 —lc-ctype=ru_RU.UTF-8 —encoding=UTF8 -D /db/postgresql

Для украинского языка

initdb —locale=uk_UA.UTF-8 —lc-collate=uk_UA.UTF-8 —lc-ctype=uk_UA.UTF-8 —encoding=UTF8 -D /db/postgresql

где /db/postgresql ваш каталог данных PostgreSQL. Кодировка, конечно же, UTF-8.

Подробный вариант пересоздания кластера

2.Из под админских прав запускаем cmd. Если это делаете в win7, то запускаем от Администратора.

4.Проводим инициализацию кластера вручную с указанием пути где он будет находиться.

5.Удаляем службу PostgreSQL, которая была установлена в ходе установки.

sc delete pgsql-9.1.2-1.1C-x64

Где pgsql-9.1.2-1.1C-x64 – Это название службы. Если не знаете название точно, можно посмотреть свойствах службы “PostgreSQL Database Server…” (Пуск – Панель управления – Администрирование – Службы )

6.Создаем новый сервис с указанием нашего кластера

7.Теперь заходим в службы. Пуск – Панель управления – Администрирование – Службы и стартуем нашу службу.

Ошибка СУБД: ERROR: new encoding (UTF8) is incompatible with the encoding of the template database (WIN1251).

HINT: Use the same encoding as in the template database, or use template0 as template.

Вы выбрали неправильную локаль при установке СУБД (WIN1251) для сервера и клиента, нужно изменить на UTF-8 в конфигурации или переустановить СУБД со следующими параметрами:

Внимание при установке НЕ выбирайте локаль Настройки ОС, выбирайте из списка Russian, Russia

Настройка PostgreSQL

Следует помнить о рекомендации 1С не использовать в запросах конструкции ПОЛНОЕ ВНЕШНЕЕ СОЕДИНЕНИЕ и заменять его, используя, например, комбинацию из нескольких левых соединений. Известна также проблема с потерей производительности в запросах, где применяется соединение с виртуальной таблицей СрезПоследних, к ней рекомендуется делать отдельные запросы и сохранять результаты во временных таблицах.

Настройка конфигурации производится редактированем файла postgresql.conf.

Наиболее важные параметры

effective_cache_size = 0,5 от ёмкости RAM

fsync = off отключаем сброс на диск после каждой транзации (Внимание! Применять только при использовании надежного UPS, есть опасность потери данных при неожиданном отключении)

synchronous_commit = off отключаем синхронную запись в лог (риски теже, что и у fsync)

wal_buffers = 0,25 от ёмкости RAM

После настройки не забываем выполнить перезапуск службы:

service postgresql restart

Настройка сети

Для подключения клиентов 1С к серверу извне и работы сервера баз данных, на файрволе, должны быть открыты следующие порты:

Агент сервера (ragent) & tcp:1540 Главный менеджер кластера (rmngr) & tcp:1541 Диапазон сетевых портов, для динамического распределения рабочих процессов & tcp:1560&1591, tcp:5432 & Postgresql. Создадим правило через стандартный интерфейс, либо с помощью команды:

Теперь с другого компьютера мы спокойно запускаем клиент 1С:Предприятия, добавляем существующую информационную базу newdb. Не забываем про лицензии, программной / аппаратной защиты.

Резервное копирование

Создание дампа базы данных делаем командой

Восстановление из дампа

Периодическое обслуживание

Рекомендуется настроить AVTO VACUUM в файле конфигурации. Но не пренебрегаем и запуском через планировщик принудительной команды.

Просмотр активности PostgreSQL

Иногда полезно видеть чем сейчас занимается сервер. Поможет такая конструкция:

Либо проверим все ли зависимости были установлены. И установим недостающие.

ERROR: type «tt7» already exists

Пример полного текста ошибки:

HINT : A relation has an associated type of the same name , so you must use a name that doesn ‘ t conflict .

Описание:

Данная ошибка является «плавающей» и может возникать в различных местах

Решение:

Выгрузим и загрузим базу данных средствами 1С:Предприятия(через файл *.dt).

ERROR: could not read block

Ошибка при выполнении операции с информационно базой по причине : Ошибка СУБД : ERROR : could not read block . . . in file «» Input / output error

Описание ошибки:

База не запускается. Разрушились диски.

Решения:

Переносим базу на другую дисковую систему.

Разворачиваем из резервной копии.

Пример полного текста ошибки:

Не удалось привязаться к адресу . Адрес уже используется . Возможно порт 5432 занят другим процессом postmaster ? Система БД выключена . Не удалось запустить сервер .

Описание:

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

В этой ситуации при попытке запуска видно ошибку – сервер не запускается.

А при проверке состояния видно, что сервер работает.

Если проверим запущенные процессы пользователя postgres, то можно увидеть, что порт 5432 занят кластером PostgreSQL, только запущенным из каталога по умолчанию.

Решение:

Остановим работающий кластер сервера СУБД.

/ opt / pgpro / ent — 10 / bin / pg_ctl — locale = ru_RU . UTF — 8 — D / var / lib / pgpro / ent — 10 / data stop

Инициализируем кластер из нового каталога(если он не инициализирован).

/ opt / pgpro / ent — 10 / bin / initdb — locale = ru_RU . UTF — 8 — D / pgpro / pgdata

Запустим из нового каталога.

/ opt / pgpro / ent — 10 / bin / pg_ctl — locale = ru_RU . UTF — 8 — D / pgpro / pgdata start

Описание:

Длительный запуск, длительный захват объектов в хранилище, длительное сохранение конфигурации 1С:Предприятия.

Решение:

Такая проблема может быть связано с настройками СУБД PostgreSQL.

Рассчитаем настройки СУБД.

Описание настроек приведено на ИТС.

Выполним настройки, для этого перейдем в терминал psql:

Через psql установим параметры командой ALTER SYSTEM SET(параметры необходимо указать для вашей СУБД):

ALTER SYSTEM SET max_parallel_workers_per_gather = 22 ;

Описание ошибки:

При загрузке данных из файла *.xlsx в 1С отображаются иероглифы. Используемая СУБД PostgreSQL/PostgresPro.

Также возможна проблема с кодировкой в выгружаемом файле из 1С:

Решение:

На сервере СУБД проверим и выполним настройку локали.

1. Проверим наличие локали:

2. Проверим переменную:

Корректное значение результатов выполнения команд 2, 3:

3. Если результат не соответствует, выполним:

5. Выполним перезапуск серверов СУБД

Еще можно посмотреть

Утилита ring license для 1С версии 8.3.14 и выше под Linux

Для чего нужен 1C ring license? На текущий момент широко распространено использование программных лицензий. И системы на базе 1С в этом не исключение. Но, помимо простой активации пин-кодов, программная лицензия 1С также нуждается в обслуживании. Для обслуживания разработчику требуются знания об инструменте для получения списков, информации, анализа состояния файлов программных лицензий. Об этом инструменте мы […]

Настройка сервера хранилища конфигураций 1С на Linux

Установка и настройка хранилища конфигураций 1C на Linux сервере

Хранилище конфигурации 1С:Предприятия 8.3 является инструментом групповой разработки. Настраиваем сервер хранилища на Linux.

Основные команды Linux

Список основных команд консоли Linux которые потребуются при установке и настройке 1С. Примеры использования с комментариями.

Администрирование серверов 1С на Linux

Ошибки публикации базы и веб сервиса на веб сервере 1C+ Apache +Linux.

Многие из нас привыкли публиковать базу или веб сервис 1С нажатием нескольких кнопок. Но не все из многих знают, что для этого необходимо запустить(от имени администратора!) конфигуратор 1С:Предприятие именно на той машине, где установлен веб сервер(а именно компонента веб-расширения 1С:Предприятия). В случае, если веб-сервер и компонента веб-расширения 1С:Предприятия установлены на машину с ОС Linux без […]

Ошибки на клиенте 1с линукс шрифты

Ошибки на клиенте при работе с сервером 1С на Linux. Часть 2

Разбор наиболее часто встречающихся ошибок при работе с 1С на Linux.

Установка двух версий сервера 1С на Linux

Пошаговый процесс установки и запуска двух версий сервера 1С на Linux. Полное описание настройки второго экземпляра сервера 1С.

Читайте также:

      

  • Какая максимальная длина линии rs 485 без повторителей интерфейсов для с2000 usb
  •   

  • Anadius64 dll что это
  •   

  • Как создать файл autoexec ash
  •   

  • Как обновить 3ds max 2020
  •   

  • Как настроить ноутбук фан контроль

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Ошибка сохранения 16 симс средневековье
  • Ошибка создания подписи не установлена или недействительна лицензия скзи криптопро