Я пытаюсь установить 64-битную версию PostgreSQL 9.2 для Windows на моем компьютере (Windows 7 64 бит) и получить эту ошибку:
The environment variable COMPSPEC does not seem to point to the cmd.exe or there is a trailing semi colon present.
Я установил его как Администратор.
Я отключил антивирус (Microsoft Security Essentials) и брандмауэр.
вернулся test ok
Я проверил свои переменные системной среды для трейдинга с двоеточием, и я не смог найти его.
Затем я установил 32-битную версию и смог добраться до конца установки с другим сообщением об ошибке: Problem running post-install step. Installation may not complete correctly Error reading the C:Program Files (x86)PostgreSQL9.2datapostgresql.conf , но в этом каталоге нет файла postgresql.conf . Он установил приложение, и когда я пытаюсь подключить сервер с красным X, он говорит об ошибке внизу, и он не будет подключаться после ввода пароля.
Как подключиться к этому серверному соединению?
ComSpec — это общее сообщение об ошибке для любого сбоя установки.
- Перейдите к следующему пути C:UsersXXXXXXAppDataLocalTemp
- Откройте ‘bitrock_installer_XXXX.log’
- Проверьте, если вы получаете ошибку ниже:
Script stderr: » C:UsersXXXXXAppDataLocalTempPOSTGR
1.BAT "’не распознается как внутренняя или внешняя команда, операционная программа или командный файл.
Ошибка при запуске
1.BAT "’не распознается как внутренняя или внешняя команда,
оперативная программа или командный файл.
Это проблема с 8.3 именами файлов и каталогами ‘(например,’Postgres Install ‘- > ‘POSTGR
1 ‘). Статья Microsoft об отключении имен и каталогов 8.3: https://support.microsoft.com/en-gb/kb/121007
Решение:
-
Откройте командную строку в режиме администратора
Выполните следующую команду, чтобы изменить формат на основе вашего диска или всех дисков
Выполните установку как пользователь с правами администратора
Технический блог специалистов ООО"Интерфейс"
- Главная
- Типовые ошибки установки сервера 1С:Предприятие и PostgreSQL на платформе Linux.
Типовые ошибки установки сервера 1С:Предприятие и PostgreSQL на платформе Linux.
- Автор: Уваров А.С.
- 22.05.2014
Связка сервера 1С:Предприятие и PostgreSQL вторая по популярности среди установок 1С и самое используемое решение на платформе Linux. В отличии внедрений на базе Windows и MSSQL, где трудно сделать так, чтобы не заработало, внедрения на базе Linux таят множество подводных камней для неопытного администратора. Часто бывает так, что вроде бы все сделано правильно, но ошибка следует за ошибкой. Сегодня мы рассмотрим самые типовые из них.
Общая информация
Перед тем, как начинать искать ошибки установки и, вообще, приступать к внедрению серверной версии 1С:Предприятия было бы неплохо освежить представление как это работает:
В небольших внедрениях сервер 1С и сервер СУБД обычно совмещают на одном физическом сервере, что немного сужает круг возможных ошибок. В нашем случае будет рассматриваться ситуация, когда сервера разнесены по разным машинам. В нашей тестовой лаборатории мы развернули следующую схему:
В нашем распоряжении имеются два сервера под управлением Ubuntu 12.04 x64, на одном из них установлен сервер 1С:Предприятие версии 8.3, на другом PostgreSQL 9.04 от Ethersoft, а также клиент под управлением Windows. Напоминаем, что клиент работает только с сервером 1С, который, в свою очередь, формирует необходимые запросы к серверу СУБД. Никаких запросов от клиента к серверу управления базами данных не происходит.
Сервер баз данных не обнаружен
ВАЖНО: пользователь "postgres" не прошёл проверку подлинности (Ident)
Данная ошибка возникает при разнесении серверов по разным ПК из-за неправильно настроеной проверки подлинности в локальной сети. Для устранения откройте /var/lib/pgsql/data/pg_hba.conf, найдите строку:
и приведите ее к виду:
где 192.168.31.0/24 — диапазон вашей локальной сети. Если такой строки нет, ее следует создать в секции IPv4 local connections.
Сервер баз данных не обнаружен
could not translate host name "NAME" to address: Temporary failure in name resolution
На первый взгляд ошибка понятна: клиент не может разрешить имя сервера СУБД, типичная ошибка для небольших сетей, где отсутствует локальный DNS-сервер. В качестве решения добавляют запись в файл hosts на клиенте, что не дает никакого результата.
А теперь вспоминаем, о чем было сказано несколько раньше. Клиентом сервера СУБД является сервер 1С, но никак не клиентский ПК, следовательно запись нужно добавлять на сервере 1С:Предприятие в файл /etc/hosts на платформе Linux или в C:WindowsSystem32driversetchosts на платформе Windows.
Аналогичная ошибка будет возникать, если вы забыли добавить запись типа A для сервера СУБД на локальном DNS-сервере.
Ошибка при выполнении операции с информационной базой
server_addr=NAME descr=11001(0x00002AF9): Этот хост неизвестен.
Как и прошлая, эта ошибка связана с неправильным разрешением клиентом имени сервера. На этот раз именно клиентским ПК. В качестве решения добавляем в файл /etc/hosts на платформе Linux или в C:WindowsSystem32driversetchosts на платформе Windows запись вида:
где указываете адрес и имя вашего сервера 1С:Предприятия. В случае использования локального DNS следует добавить A-запись для сервера 1С.
Ошибка СУБД: DATABASE не пригоден для использования
Гораздо более серьезная ошибка, которая говорит о том, что вы установили несовместимую с 1С:Предприятие версию PostgreSQL или допустили грубые ошибки при установке, например не установили все необходимые зависимости, в частности библиотеку libICU.
Если вы имеете достаточный опыт администрирования Linux систем, то можете попробовать доустановить необходимые библиотеки и заново инициализировать кластер СУБД. В противном случае PostgreSQL лучше переустановить, не забыв удалить содержимое папки /var/lib/pgsql.
Также данная ошибка может возникать при использовании сборок 9.1.x и 9.2.x Postgre@Etersoft, подробности смотрите ниже.
Ошибка СУБД:
ERROR: could not load library "/usr/lib/x86_64-linux-gnu/postgresql/fasttrun.so"
Довольно специфичная ошибка, характерная для сборок 9.1.x и 9.2.x Postgre@Etersoft, также может приводить предыдущей ошибке. Причина кроется в неисправленной ошибке в библиотеке fasttrun.so. Решение — откатиться на сборку 9.0.x Postgre@Etersoft.
Ошибка СУБД
ERROR: type "mvarchar" does not exist at character 31
Возникает если база данных была создана без помощи системы 1С:Предприятия. Помните, для работы с 1С базы данных следует создавать только с использованием инструментов платформы 1С: через консоль Администрирование серверов 1С Предприятия
или через средство запуска 1С.
Сервер баз данных не обнаружен
ВАЖНО: пользователь "postgres" не прошёл проверку подлинности (по паролю)
Очень простая ошибка. Неправильно указан пароль суперпользователя СУБД postgres. Вариантов решения два: вспомнить пароль или изменить его. Во втором случае вам нужно будет изменить пароль в свойствах всех существующих информационных баз через оснастку Администрирование серверов 1С Предприятия.
Сервер баз данных не обнаружен
FATAL: database "NAME" does not exist
Еще одна очень простая ошибка. Смысл ее сводится к тому, что указанная БД не существует. Чаще всего возникает из-за ошибки в указании имени базы. Следует помнить, что информационная база 1С в кластере и база данных СУБД — две разные сущности и могут иметь различные имена. Также следует помнить, что Linux системы чувствительны к регистру и для них unf83 и UNF83 два разных имени.
В данной статье мы поговорим о методах решения наиболее распространенных проблем, связанных с PostgreSQL, — программы, отвечающей за работу с базами данных Holdem Manager 2.
Проблема I. Неполадки PostgreSQL с Windows Firewall / Windows Defender.
Все фаерволлы, антивирусы и защитники обладают функцией настройки исключений для программ, которым необходимо подключение к интернету.
Чтобы убедиться в том, что проблемы с PostgreSQL возникают именно из-за Windows Firewall/Windows Defender отключите ваш антивирус и:
- Отключите Windows Firewall, если после этого PostgreSQL заработал, то проблемы с Windows Firewall.
- Отключите Windows Defender, если после этого PostgreSQL заработал, то проблемы с Windows Defender.
Если проблема с запуском PostgreSQL связана с Windows Firewall, то вам необходимо добавить в список исключений брандмауэра порт 5432, а также следующие файлы:
- C:Program FilesHoldem Manager 2HoldemManager.exe
- C:postgreSQLinPg_ctl.exe
- C:postgreSQLinPostgres.exe
Для этого открываем Пуск/Панель управления/Брандмауэр Windows и выбираем функцию «Разрешить запуск программы или компонента через брандмауэр Windows».
Далее находим в открывшемся списке «postgres», нажимаем «Сведения» и вводим номер порта: 5432.
Для добавления вышеобозначенных файлов в список исключений нажимаем «Разрешить другую программу».
Затем жмем «Обзор» и указываем следующие пути:
- C:Program FilesHoldem Manager 2HoldemManager.exe
- C:postgreSQLinPg_ctl.exe
- C:postgreSQLinPostgres.exe
После этого нажимаем «Добавить».
Теперь необходимо проделать анaлoгичную операцию с Windows Defender.
Переходим в Пуск/Панель управления/Защитник Windows. Нажимаем «Программы», а затем «Параметры».
Переходим на вкладку «Исключенные файлы и папки» и нажимаем «Добавить».
Указываем пути к папкам C:Program FilesHoldem Manager 2 и C:PostgreSQL.
Проблема II. Ошибки подключения к PostgreSQL.
Если у вас возникают следующие проблемы:
- Ошибка: «Failed to establish a connection to "127.0.0.1". Service ‘PostgreSQL Database Server 8.x’ (pgsql-8.x) failed to start».
- Ошибка: «Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host».
- PostgreSQL Database service запускается, а затем отключается.
То для их решения:
- Удостоверьтесь, что служба UAC (контроль учетных записей Windows) отключена.
- Перезагрузите службу «PostgreSQL» и компьютер.
Пуск/Все программы/PostgreSQL Х.x/Stop Service. Затем нажмите «Start Service».
- Удалите файл C:postgreSQLdatapostmaster.pid. Если этого файла нет, ничего с похожим названием не удаляйте.
- Проверьте настройки вашего фаерволла/брандмауэра.
- Установите для службы «PostgreSQL» вход с системной учетной записью.
В службах (Пуск/Панель управления/Администрирование/Службы) найдите службу «PostgreSQL Server X.x.»
Если данная служба не запущена, то кликните на нее правой кнопкой мыши и выберите опцию «Пуск». Если после этого служба запустилась, а затем остановилась, то:
- Кликните правой кнопкой на службу «PostgreSQL Server Х.х» и выберите «Свойства».
- В меню «Вход в систему», установите вход в систему «С системной учетной записью» и нажмите «ОК».
- Перезагрузите систему (если проблема не решилась, то верните первоначальные установки входа в систему).
Проблема III. PostgreSQL перестал работать после обновления Windows.
Время от времени причиной ошибки подключения к PostgreSQL может быть недавнее обновление системы. Если после обновления Windows такая ошибка возникла, то следует откатить последние обновления системы на дату, когда подключение к PostgreSQL проходило успешно.
Для этого в меню «Пуск» открываем «Панель управления». Выбираем пункт «Система». После этого заходим в «Просмотр установленных обновлений». Выбираем помешавшее работе программы обновление и жмем «Удалить».
Проблема IV. Ошибка «database must be on NTFS formatted volumes not FAT volumes».
Если при установки PostgreSQL происходит данная ошибка, значит ваш жесткий диск использует файловую систему FAT, в то время как для корректной работы PostgreSQL необходима файловая система NTFS.
Для решения этой проблемы вам следует конвертировать файловую систему FAT в NTFS:
- Откройте командную строку (Пуск/Выполнить/cmd), предварительно остановив работу всех запущенных программ.
- Введите команду CONVERT Буква диска: FS:NTFS. Например, если вы желаете конвертировать файловую систему на диске С, то команда будет выглядеть следующим образом: CONVERT C: /FS:NTFS.
- Нажмите «Enter».
После завершения процедуры конвертации файловой системы запустите установку PostgreSQL.
Проблема V. Ошибка «Secondary Logon Service is not running. »
Для решения этой проблемы необходимо запустить службу «Secondary Logon Service» (Вторичный вход в систему).
- Переходим в Пуск/Панель управления/Администрирование/Службы.
- В Службах находим службу «Secondary Logon» (Вторичный вход в систему), жмем на нее правой кнопкой мыши и выбираем «Пуск».
- Запускаем установку PostgreSQL.
Проблема VI. Утерян пароль к PostgreSQL.
По умолчанию пароль к базам данных PostgreSQL «postgrespass» или «dbpass».
Если данные пароли не подходят, то:
- Посредством Блокнота откройте файл CPostgreSQLdatapg_hba.conf.
- Замените в данном файле все встречающиеся в тексте «md5» на «trust» посредством функции Правка/Заменить или, нажав CTRL+H.
- Сохраните и закройте файл.
- Перезагрузите службу «PostgreSQL» через Пуск/Панель управления/Администрирование/Службы или посредством перезагрузки ПК.
Теперь к PostgreSQL подойдет любой введенный пароль.
Проблема VII. PostgreSQL создает огромное количество log-файлов, которые засоряют систему и замедляют ее работу.
Для того чтобы отключить создание log-файлов, вам следует:
- Удалить все файлы из папки C:postgreSQLdatapg_log.
- Открыть с помощью Блокнота файл CPostgreSQLdatapostgresql.conf.
- Найти строку «logging_collector = on» и измените «on» на «off».
- Сохранить изменения в файле и перезагрузить ПК.
Проблема VIII. Ошибка «. index XX is not a btree».
Если при запуске HM2 возникает следующая ошибка, то необходимо произвести обслуживание базы данных HM2 посредством процедуры «Vaccum» и «Reindex».
Для этого в HM2 переходим в меню «Database» на вкладки «Home», выбираем необходимую базу данных, переходим во вкладку «Maintenance». Выбираем «Full – Vacuum» и жмем «Optimize».
Проблема IX. Ошибка при удалении базы данных.
Если после создания новой базы данных и выбора ее в качестве основной,
вы не можете удалить старую базу данных по причине возникновения ошибки: «ERROR: 55006: database “Имя базы” is being accessed by other users», то вам необходимо отключить контроль учетных записей Windows.
- Переходим в панель управления и вводим в поле поиска «UAC».
- Щелкаем по ссылке «Изменение параметров контроля учетных записей».
- В открывшемся окне перемещаем ползунок в нижнюю позицию.