- Записки IT специалиста
- Типовые ошибки установки сервера 1С:Предприятие и PostgreSQL на платформе Linux.
- Общая информация
- Сервер баз данных не обнаружен ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (Ident)
- Сервер баз данных не обнаружен could not translate host name «NAME» to address: Temporary failure in name resolution
- Ошибка при выполнении операции с информационной базой server_addr=NAME descr=11001(0x00002AF9): Этот хост неизвестен.
- Ошибка СУБД: DATABASE не пригоден для использования
- Ошибка СУБД: ERROR: could not load library «/usr/lib/x86_64-linux-gnu/postgresql/fasttrun.so»
- Ошибка СУБД ERROR: type «mvarchar» does not exist at character 31
- Сервер баз данных не обнаружен ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (по паролю)
- Сервер баз данных не обнаружен FATAL: database «NAME» does not exist
- Ошибка при создании базы на сервере 1с 8.3+postgresql Debian 7
Записки IT специалиста
Типовые ошибки установки сервера 1С:Предприятие и PostgreSQL на платформе Linux.
Связка сервера 1С:Предприятие и PostgreSQL вторая по популярности среди установок 1С и самое используемое решение на платформе Linux. В отличии внедрений на базе Windows и MSSQL, где трудно сделать так, чтобы не заработало, внедрения на базе Linux таят множество подводных камней для неопытного администратора. Часто бывает так, что вроде бы все сделано правильно, но ошибка следует за ошибкой. Сегодня мы рассмотрим самые типовые из них.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Общая информация
Перед тем, как начинать искать ошибки установки и, вообще, приступать к внедрению серверной версии 1С:Предприятия было бы неплохо освежить представление как это работает:
В небольших внедрениях сервер 1С и сервер СУБД обычно совмещают на одном физическом сервере, что немного сужает круг возможных ошибок. В нашем случае будет рассматриваться ситуация, когда сервера разнесены по разным машинам. В нашей тестовой лаборатории мы развернули следующую схему:
В нашем распоряжении имеются два сервера под управлением Ubuntu 12.04 x64, на одном из них установлен сервер 1С:Предприятие версии 8.3, на другом PostgreSQL 9.04 от Ethersoft, а также клиент под управлением Windows. Напоминаем, что клиент работает только с сервером 1С, который, в свою очередь, формирует необходимые запросы к серверу СУБД. Никаких запросов от клиента к серверу управления базами данных не происходит.
Сервер баз данных не обнаружен
ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (Ident)
Данная ошибка возникает при разнесении серверов по разным ПК из-за неправильно настроеной проверки подлинности в локальной сети. Для устранения откройте /var/lib/pgsql/data/pg_hba.conf, найдите строку:
host all all 192.168.31.0/24 ident
host all all 192.168.31.0/24 md5
где 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:\Windows\System32\drivers\etc\hosts на платформе Windows.
Аналогичная ошибка будет возникать, если вы забыли добавить запись типа A для сервера СУБД на локальном DNS-сервере.
Ошибка при выполнении операции с информационной базой
server_addr=NAME descr=11001(0x00002AF9): Этот хост неизвестен.
Как и прошлая, эта ошибка связана с неправильным разрешением клиентом имени сервера. На этот раз именно клиентским ПК. В качестве решения добавляем в файл /etc/hosts на платформе Linux или в C:\Windows\System32\drivers\etc\hosts на платформе 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 два разных имени.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Ошибка при создании базы на сервере 1с 8.3+postgresql Debian 7
В общем я настроил сервер на базе debian 7 там установил сервер 1с 8.3 и базу данных postgresql, все работает! На своем компе в сети я установить оснастку адмиинстрирования сервера 1с, там же добавил центральный сервер,все хорошо, но при создании базы вылетает вот такая ошибка, может кто знает в чем проблема весь инет перерыл не нашел подобной ошибки!Скрин внутри https://yadi.sk/d/jhL1c5GRkPzYY
Надо читать первую ошибку. Возможно вторая исходит из первой. Убедитесь, что рабочие процессы созданы в этой оснастке?
дык это первая ошибка, рабочие процессы есть вот https://yadi.sk/d/BB1cLsIKkQ2Fm
а /home/ случаем не по nfs примонтирован?
нет, я ничего не монтировал после установки системы
1) в файле hosts на винде добавили запись на ваш линуксовый сервер? 2) фаер на винде допускает соединение с линуксовым сервером?
да в фале hosts все прописал, касперского отключал фаер не работает! такая же ерунда
а версия postgre какая? У меня нормально заработало только с вот этой-
PostgreSQL 9.2.1-eter1debian on i486-pc-linux-gnu, compiled by gcc (Debian 4.7.2-5) 4.7.2.
Linux main 3.2.0-4-686-pae #1 SMP Debian 3.2.71-2 i686 GNU/Linux
у меня такая же стоит PostgreSQL 9.2.1-eter8debian on x86_64-pc-linux-gnu, compiled by gcc (Debian 4.7.2-5) 4.7.2, 64-bit
Система Linux postgres 2.6.32-19-pve #1 SMP Wed May 15 07:32:52 CEST 2013 x86_64 GNU/Linux
Интересно что при создании базы через сервер 1с установленный на виндовс, все нормально база поднимается!
Попробовал, у меня из линуксового толстого клиента 1С тоже не получается базу создать (сервер предприятия и постгре на лине). С винды всё добаляется. у 1с вроде бы даже баг на эту тему проскакивал, видимо не пофиксили.
Так и живем, надо базу создать, бегаю к компъютеру с win 🙁
Значит сервер 1с на линуксе не будет работать, можно и не мучиться?
да почему не будет, он работает, просто не надо дебианом пользоваться, а ставить red hat и его производные, качать постргре с сайта 1С и радоваться жизни
не слушайте анонимуса, у меня в настоящий момент сервер debian old stable на нем установлен постгресс и сервер предприятия 1С. На этом сервере крутится управление торговли «Управление торговлей», редакция 10.3 (10.3.31.1) и бухгалтерская база, нагрузка правда небольшая всего 5-6 человек одновременно. Минус один — с линуксовой 1с я не могу создать никакую базу. С виндовой машины нормально подключаюсь к серверу с линуксом, создаю всё что надо и дальше работаю хоть из линукса хоть из вин.
да в принципе у меня такие же потребности, небольшое количество подключений, только я так и не пойму как ты базы то создаешь на сервере 1с который у тебя на debiane? Т.е. у тебя сервер 1с стоит на виндовой машине? так?:)
У меня сейчас стоит сервер 1с на виндовой машине дык я могу создать базу на сервере с postgresql и она будет работать нормально!
Внимание! Это уничтожит всю информацию о существующем кластере. ЕСЛИ ЭТО ЕЩЕ НЕ В ПРОДАКШЕНЕ, может попробовать
1) из винды в консоли администрирования серверов 1с удалить все что можно
# service srv1cv83 stop # service postgresql stop
3) чистим директорию 1с удалить всё из директории /home/usr1cv8
4)На видовой машине посмотреть куда 1С пишет конфигурационные файлы и тоже снести их (давно не сталкивался, даже не подскажу где это)
5)запускаем постгрес и сервер 1С
# service postgresql start # service srv1cv83 start
6)Из винды пробуем создать новую базу