Связка сервера 1С:Предприятие и PostgreSQL вторая по популярности среди установок 1С и самое используемое решение на платформе Linux. В отличии внедрений на базе Windows и MSSQL, где трудно сделать так, чтобы не заработало, внедрения на базе Linux таят множество подводных камней для неопытного администратора. Часто бывает так, что вроде бы все сделано правильно, но ошибка следует за ошибкой. Сегодня мы рассмотрим самые типовые из них.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Общая информация
Перед тем, как начинать искать ошибки установки и, вообще, приступать к внедрению серверной версии 1С:Предприятия было бы неплохо освежить представление как это работает:
Сервер 1С Предприятия. Часть 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:WindowsSystem32driversetchosts на платформе Windows.
Аналогичная ошибка будет возникать, если вы забыли добавить запись типа A для сервера СУБД на локальном DNS-сервере.
Ошибка при выполнении операции с информационной базой
server_addr=NAME descr=11001(0x00002AF9): Этот хост неизвестен.
Как и прошлая, эта ошибка связана с неправильным разрешением клиентом имени сервера. На этот раз именно клиентским ПК. В качестве решения добавляем в файл /etc/hosts на платформе Linux или в C:WindowsSystem32driversetchosts на платформе Windows запись вида:
192.168.31.83 SRV-1C-1204
где указываете адрес и имя вашего сервера 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С «Сервер баз данных не обнаружен»
При работе с 1С в клиент-серверном варианте могут возникать ошибки, которые напрямую не связаны с 1С:Предприятием, а связаны непосредственно с сервером управления баз данных.
Одна из распространенных ошибок — «Сервер баз данных не обнаружен…».
Продолжение данного сообщения может быть различным:
-
1. Could not translate host name «NAME» to address: Temporary failure in name resolution
2. ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (Ident)
3. ВАЖНО: в pg_hba.conf нет записи для компьютера «», пользователя «usr1cv8», базы «template»
4. Is the server running on host and accepting TCP/IP connections on port 5432?
5. «Породить новый процесс для соединения не удалось: Ресурс временно недоступен» или «ВАЖНО: извините, уже слишком много клиентов.»
6. FATAL: database «base» does not exist
Далее рассмотрим подробнее каждую ошибку.
Could not translate host name «NAME» to address: Temporary failure in name resolution
Пример полного текста ошибки:
Сервер баз данных не обнаружен could not translate host name «NAME» to address: Temporary failure in name resolution |
Описание:
Ошибка может возникать как при создании базы, так и при запуске информационной базы.
Решение:
Настроим DNS-адресацию или пропишем адреса в файл hosts. Обратите внимание, что в данном случае проблема в том, что на сервере 1С нет информации о доменном имени сервера СУБД PostgreSQL. Подробнее о DNS — Настройка DNS-адресации для 1С сервера.
ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (Ident)
Пример полного текста ошибки:
Сервер баз данных не обнаружен ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (Ident) |
Описание: Ошибка возникает при создании базы.
Решение:
Настроим проверку подлинности.
-
- Сконфигурируем доступ к серверу PostgreSQL в файле: pg_hba.conf:
vim /var/lib/pgsql/11/data/pg_hba.conf |
Файл должен содержать только следующие строки (содержащие ip серверов 1С) (остальные удалим или пометим как комментарий):
# TYPE DATABASE USER ADDRESS METHOD local all all trust host all all «Указать ip-адрес сервера 1С» md5 |
Строк должно быть, соответственно, несколько, если серверов 1С несколько в кластере.
Последняя колонка указывает на метод авторизации.
Если пока теряетесь в настройках доступа. Для понимания, можно сначала открыть все, запустить сервер.
# TYPE DATABASE USER ADDRESS METHOD local all all trust host all all 0.0.0.0/0 trust |
А после удачного старта сервера СУБД разбираться с настройками доступа.
ВАЖНО: в pg_hba.conf нет записи для компьютера «», пользователя «usr1cv8», базы «template»
Пример полного текста ошибки:
Сервер баз данных не обнаружен ВАЖНО: в pg_hba.conf нет записи для компьютера «», пользователя «usr1cv8», базы «template». |
Описание ошибки:
Ошибка связана с отсутствием прописанного доступа к базе данных в файле pg_hba.conf
Решение:
Добавим запись в файл pg_hba.conf.
Приведем пример содержания файла, который открывает доступ:
# TYPE DATABASE USER ADDRESS METHOD local all all trust host all all «Указать ip-адрес сервера 1С» md5 |
Строк должно быть, соответственно, несколько, если серверов 1С несколько в кластере.
Is the server running on host and accepting TCP/IP connections on port 5432?
Пример полного текста ошибки:
Сервер баз данных не обнаружен could not connect to server: No rout to host Is the server running on host and accepting TCP/IP connections on port 5432? |
Описание:
Проблема может возникать как при создании информационной базы из консоли администрирования 1С: Предприятия, так и при ее запуске в процессе эксплуатации уже существующей базы данных.
Решение:
В данном случае необходимо понимать, что рабочего процесса:
Либо нет;
Либо клиент(в нашем случае сервер 1С) его не «видит» по ряду причин:
— Отсутствие доступа;
— Обращение по другому адресу.
1. Первоначально, конечно, проверим, есть ли на сервере СУБД PostgreSQL в запущенных процессах процесс postmaster/postgres (в зависимости от версии PostgreSQL) на порту 5432.
netstat –tlnp | grep 5432 |
Или
1.1. Если по результатам проверки видим, что не запущен процесс, то необходимо его запустить.
service postgresql—11 start |
1.2. Если по результатам проверки видим, что процесс запущен, но слушает только «себя» 127.0.0.1.
То выполним ряд настроек.
Отредактируем конфигурационный файл
vim /var/lib/pgsql/11/data/postgresql.conf |
Укажем там настройку:
1.3. Если видим, что процесс запущен
То переходим к следующем пункту.
2. Проверим доступность процесса по порту, который он «слушает».
С сервера 1С выполним команду(в нашем случае имя сервера СУБД «1s-on-pg-1»):
Если доступ отсутствует – то мы увидим нечто подобное:
Подключение к 333.33.33.xx…Не удалось открыть подключение к этому узлу, на порт 5432: Сбой подключения |
К причинам отсутствия доступа по данному порту можно отнести:
- Блокировка брадмауэром или другими подобными программами;
- Отсутствие доступа на уровне сети.
2.1. Проверим статус файерволла.
systemctl status firewalld |
Если файерволл работает и блокирует порт 5432, то.
Отключим firewall:
и отключим автозапуск.
systemctl disable firewalld |
Результат должен быть следующим:
systemctl status firewalld |
или
настроим, открыв порт 5432.
iptables —t filter —I INPUT —p tcp —dport 5432 —j ACCEPT service iptables save |
«Породить новый процесс для соединения не удалось: Ресурс временно недоступен» или «ВАЖНО: извините, уже слишком много клиентов»
Пример полного текста ошибки:
Сервер баз данных не обнаружен породить новый процесс для соединения не удалось: Ресурс временно недоступен |
или
Сервер баз данных не обнаружен ВАЖНО: извините, уже слишком много клиентов |
Описание:
В процессе работы выдается ошибка
Решение:
Изменим настройку в файле postgresql.conf
Данное число, должно быть примерно в 1.5 раза больше максимального количества пользователей.
Установим ее:
-
- Перейдем в терминал psql.
-
- Через psql установим следующие параметры командой ALTER SYSTEM SET:
ALTER SYSTEM SET max_connections=500; |
FATAL: database «base» does not exist
Пример полного текста ошибки:
Сервер баз данных не обнаружен FATAL: database «base» does not exist |
Описание:
При запуске базы данных выдается ошибка, которая говорит о том, что данная база не существует.
Решение:
Проверим наименование базы данных и информационной базы. Сделать это можно в консоли администрирования 1С в свойствах базы.
Учтём, что Linux чувствителен к регистру(Base/base/BASE – для него это разные имена баз).
Как заставить Сервер 1С (что работает на Windows), увидеть в сети сервер PostgreSQL на Linux UBUNTU?
Конечно, данная тема также подымается и на курсе: Администратор 1С!
Собственно решить такие проблемы как:
- «Ошибка создания информационной базы»
- «Ошибка операции администрирования»
- «Сервер баз данных не обнаружен»
- «Could not connect to server: Connection refused (Ox..00000/0000…)
- Is the server running on host 192.168….x… and accepting TCP/IP connections on port 5432?»
При установке на один физический сервер, «Cервера 1С» (кластер серверов) + СУБД PostgreSQL проблем обычно не возникает. И «Сервер 1С» прекрасно видит PostgreSQL, новые информационные базы создаются, и все работает по умолчанию, конечно если поставили птичку во время установки СУБД на Windows — «Разрешать подключения с любых IP адресов».
Но совсем другая история, когда PostgreSQL у нас работает на Linux!
Ведь в процессе установки PostgreSQL на Linux подобных «птичек» нет )
Как решить проблему?
На самом деле все довольно просто!
Проверим в начале c какого IP принимаются подключения, и какой порт слушает сервис PostgreSQL.
Тут нам поможет команда:
sudo netstat —pant | grep postgres |
На картинке ниже, мы четко видим, что наш PostgreSQL слушает только localhost — 127.0.0.1 и порт по умолчанию 5432.
Выражаясь простым языком, «Сервер 1С» может работать в паре с СУБД, только на этом севере (хосте), при текущих настройках (По умолчанию, после установки «Постгреса» на этот сервер).
И так, теперь разобравшись, что проблема действительно есть в настройках PostgreSQL, можно приступить к ее решению!
Сперва нам нужно найти конфигурационный файл postgresql.conf
Местоположение этого файла зависит от версии СУБД PostgreSQL (На примере использую сборку от компании Postgres Professional — PostgreSQL 10.5, сборку установил на UBUNTU server 18.04 LTS).
Найти файл очень просто, используем команду:
ps aux | grep postgres | grep — —D |
Нас интересует все что мы видим после -D /var/lib/pgpro/1c-10/data/
Здесь в каталоге /data/ и лежит наш файл postgresql.conf
Идем в этот каталог, откроем для редактирования postgresql.conf, и внесем нужные правки.
Для передвижения по каталогам и редактированию файлов на UBUNTU server 18.04, я использую MC (Midnight Commander).
Как его установить, писал здесь >>
(Выбрав файл postgresql.conf) далее давим клавишу F4:
Ищем строку #listen_addresses = ‘localhost’.
Раскомментируем строку (убрав #).
И приведем строку к виду: listen_addresses = ‘*’
Давим F2 + Enter и сохраняем файл.
Далее выполним перезапуск сервиса postgresql:
Стоп:
service postgrespro-1c-10 stop
И старт:
service postgrespro-1c-10 start
(Команда перезапуска у Вас будет отличатся, если версия PostgreSQL другая или другой сборки).
Затем стоит проверить работает ли PostgreSQL:
service postgrespro-1c-10 status
И если видим (как на картинке ниже) зеленым цветом active (running) значит PostgreSQL работает!
Смотрим, что теперь «слушает» PostgreSQL:
sudo netstat —pant | grep postgres |
Отлично!
После перезапуска сервиса, PostgreSQL принимает подключения действительно с любых IP адресов на стандартный порт 5432!
Но! не спешите сейчас бежать на Сервер 1С, создавать новую информационную базу, или выполнять подключение.
Сервер 1С встретит Вас новой ошибкой! )
«ВАЖНО: в pg_hba.conf нет записи для компьютера «192.168.128.13», пользователя «postgres», базы «template1″, SSl выкл.»
Сервер 1С требует от нас создать еще одну запись, уже в другом файле pg_hba.conf
«Надо, так надо )»
Открываем для редактирования файл pg_hba.conf, он к слову находится в том же каталоге, что и файл postgresql.conf
Ищем строку: host all all 127.0.0.1/32 md5
И приводим к виду: host all all 192.168.128.13/24 md5
Где 192.168.128.13 ip адрес нашего Сервера 1С. (Тот сервер, где работает Сервер 1С).
Кстати! можно поступить и по-другому.
Просто добавить в строке ниже еще одну запись (Ту которую от нас и требует Сервер 1С):
Вот и все!
Сохраним файл и выполним перезапуск PostgreSQL.
Теперь новая информационная база 1С, будет создана успешно!
Сервер 1С работает на Windows, а PostgreSQL на Linux!
Если Вы хотите больше узнать о технической стороне 1С, тогда регистрируйтесь на первый бесплатный модуль курса: Администратор 1С >>>
12.03.18 — 17:25
Добрый день!
1С:Предприятие 8.3 (8.3.10.2561), КА 1.1, PostgreSQL 9.6.3.-1.1С(х64), Windows server 2008 R2 х64, периодически вылетают пользователи из 1С с ошибкой «Сервер баз данных не обнаружен». Перезаходят в 1С и нормально работают дальше.
В логах PostgreSQL
< 2018-03-12 16:46:45.615 MSK >WARNING: worker took too long to start; canceled
< 2018-03-12 16:46:48.610 MSK >WARNING: autovacuum worker started without a worker entry
< 2018-03-12 16:46:48.657 MSK >LOG: could not receive data from client: An established connection was aborted by the software in your host machine.
Подскажите, пожалуйста, куда смотреть?
1 — 13.03.18 — 13:25
Обычно может проявляться при сильной загрузке сервера(процессоры, диски), например
http://www.sql.ru/forum/822277/v-chem-oshibka-worker-took-too-long-to-start-cancelled
Множество фоновых и регламентных заданий, количество активны пользователей(перепроведения, отчеты) сильно превышает возможности процессоров, RDP на этом же сервере и этими же пользователями. В общем, что угодно. Диск испортился, наконец…
2 — 13.03.18 — 13:57
work_mem сколько?
3 — 13.03.18 — 14:18
На сервере крутится все. И 1С сервер, и postgresql, антивирус, 10-12 пользователей через rdp. Оперативки 32 Гб, Intel(R) Xeon(R) CPU E3-1240 v3 @ 3.40GHz.
work_mem = 500MB
4 — 13.03.18 — 14:20
Обычно загрузка процессора и памяти не больше 50%, а в моменты старта автовакуума не замечала, какие показатели.
5 — 13.03.18 — 14:22
(4) КА 1.1 — это только в этой базе ошибка или в разных других тоже бывает?
6 — 13.03.18 — 14:34
одновременно рядом были открыты две базы: маленькая самописная и КА. КА вылетела, а маленькая нет.
7 — 13.03.18 — 14:36
(3) это очень много. надо уменьшить раз в 10. это память для одной операции сортировки и хеш-таблиц в запросе.
может просто память выедается и сеанс отстреливается.
8 — 13.03.18 — 14:38
(6) 9.6.3 старое УГ, поменяй на 9.6.6 с сайта https://postgrespro.ru/products/1c
при установке у него автоматически правильные параметры постгрес.конф прописываются
9 — 13.03.18 — 14:40
(8) просто установить поверх?
10 — 13.03.18 — 14:40
(0) Сеть смотри. И домен, или АД как там у вас.
11 — 13.03.18 — 14:41
(10) + dhcp, если именами пользуешься
12 — 13.03.18 — 14:42
(10) Нет домена
13 — 13.03.18 — 14:43
(11) можно подробнее, пожалуйста?
14 — 13.03.18 — 14:45
(9) должно прокатить обычным обновлением на винде…перед этим сделай бэкап pgdump’ом и на всякий случай выгрузку в dt
и лучше проверить как все поднимется на другом компе перед тем как делать на рабочем сервере.
и кстати в антивирусе настроено исключение на папку кластера Postgre?
15 — 13.03.18 — 14:46
+(14) под виндой очень много глюков в работе постгреса связано с антивирусом
16 — 13.03.18 — 14:49
(14) спасибо, проверю все
17 — 13.03.18 — 14:51
(13) если обращение к компу идет по имени- то это работа dhcp — службы имен. Если обращаться по ip- гемору намного меньше.
18 — 13.03.18 — 14:53
А еще, постри не заточен изначально на винду, это линуксовое порождение. Поэтому его часто поднимают на отдельной машине. ну и сервер 1С там же. все, больше туда совать ничего не надо.
19 — 13.03.18 — 14:54
(17) при установке PostgreSQL указывали localhost, при создании баз 1С имя компьютера.
20 — 13.03.18 — 14:57
(19) впишите ip.
може dhcp периодически глючит.
21 — 13.03.18 — 14:58
(20) хорошо
22 — 13.03.18 — 15:01
чё там с maxconnection?
23 — 13.03.18 — 15:01
и да, сколько при этом реально сеансов?
24 — 13.03.18 — 15:08
maxconnection = 100
25 — 13.03.18 — 15:25
(23) 12
26 — 13.03.18 — 15:43
(24)(25) это разные сеансы. maxconnection можно уменьшить до 10, но это так себе оптимизация.
27 — 13.03.18 — 16:00
Нагуглила:» Но чтобы autovacuum еще и плодотворно трудился и не сильно нагружал систему, количество worker-ов должно быть как минимум 4, а в идеале – 25% всех ядер, которые выделены серверу базы данных для работы с PostgreSQL.» Что это означает? У меня в логах ругается на worker.
28 — 13.03.18 — 16:44
(27) Исходя из названия — рабочих процессов
29 — 13.03.18 — 17:02
(27) предупреждения что сервак перегружен и воркеры стартануть нормально не могут. это следствие, а не причина.
ворк мем убавь
30 — 14.03.18 — 16:27
(20) Прописала в списке баз Кластер серверов 127.0.0.1 не помогло. Вылетаем.
(14) Исключение в антивирусе не помогло
31 — 14.03.18 — 16:57
Исключение антивируса и не поможет, надо его удалить
32 — 15.03.18 — 15:35
(29) ворк мем = 50. Вылетаем
33 — 15.03.18 — 15:45
(32) Так что с антивирем?
34 — 15.03.18 — 15:48
(33) Думаю, наверное, что раз отключили, то исключили его влияние, бгг
35 — 15.03.18 — 15:48
*думают
36 — 15.03.18 — 16:05
(32) в логах ниче нового? уровень логирования может повысить.
37 — 16.03.18 — 10:58
(3) Оставьте только сервер приложений 1С и СУБД. Или заведите отдельный компьютер для РДП, если без него совсем никак. Про антивирус уже писали.
38 — 16.03.18 — 11:17
(36) ставила debug2, ничего нового не появилось. Ставила log_temp_files = 0, временные файлы логируются, читала, что надо увеличить тогда werk_mem?
39 — 16.03.18 — 11:19
сообщения
< 2018-03-12 16:46:45.615 MSK >WARNING: worker took too long to start; canceled
< 2018-03-12 16:46:48.610 MSK >WARNING: autovacuum worker started without a worker entry
несколько раз в день. Не на каждом вылетаем. Иногда бывают дни без вылетов, а сообщения есть.
40 — 16.03.18 — 11:20
(33) остановлю антивиря, посмотрю, что будет.
41 — 16.03.18 — 11:26
(40) Тебе же уже объяснили, что его не остановить нужно а снести
42 — 16.03.18 — 11:29
(41) слушаюсь
43 — 16.03.18 — 11:38
(38) почитай про ворк мем в документации. не надо ее сильно увеличивать если не олап хранилище.
bumka
44 — 26.03.18 — 11:48
Неделю без вылетов. Вероятно, полечило увеличение shared_buffers
Содержание
- Ошибка при создании базы 1С с клиента под Windows
- Ошибка субд: database не пригоден для использования
- В этой статье показан пример общих принципов разбора технологических вопросов, которые могут появляться при работе с 1С:Предприятие 8.1.
- 1. Определение текста (проявления) ошибки и локализация источника возникновения
- Сохранение информационной базы
- Восстановление информационной базы
- Ошибки информационной базы и их решение
- Тестирование и исправление
- Общая информация
- ВАЖНО: пользователь «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С+PostgreSQL+Linux. Часть 2.
- Ошибка СУБД:
- DATABASE не пригоден для использования
- ERROR: type «tt7» already exists
- ERROR: could not read block
- Не удалось запустить сервер PostgreSQL
- Длительный запуск 1С:Предприятия при работе с СУБД PostgreSQL
- Из файла *xlsx загружаются в 1С иероглифы/ в файл выгружаются иероглифы.
- Еще можно посмотреть
- Установка двух версий сервера 1С на Linux
- Ошибки публикации базы и веб сервиса на веб сервере 1C+ Apache +Linux.
- Администрирование серверов 1С на Linux
- Установка PostgreSQL для 1С на Linux
- Публикация 1С на Веб сервере Apache Linux
- Установка и настройка хранилища конфигураций 1C на Linux сервере
- Основные команды Linux
Ошибка при создании базы 1С с клиента под Windows
Установлен сервер 1С Предприятие 8.2 (релиз 8.2.17.169), СУБД PostgreSQL 9.2.1 на сервере линукс CentOS 6.3 (64bit). В среде СУБД PostgreSQL базы создаются и тестируются. При попытке создать БД с клиента на ПК под Windows, клиент выдает сообщение: «Ошибка при создании информационной базы: Ошибка операции с информационной базой Ошибка СУБД: DATABASE не пригоден для использования » Пожалуйста, подскажите где копать. Спасибо.
а с линуксов создаются нормально?
На сервере с консоли терминала в среде СУБД PostgreSQL базы создаются и тестируются.
Там мильйон причин по которым у вас вылазит такая ошибка. Вы через оснастку Администрирование серверов 1с, бд подключали?
нет. Я просто установил клиент и с него. В меня клиентский ПК под Win 7. Попробую через оснастку. Спасибо.
А постгрес пропатчен для 1С?
Попробовал через оснастку. Но при создании Центрального сервера после задания его имени «Serv1С» или IP выдаэтся следуюющее собщение: Server addr=tcp://Serv1C:1541 descr=192.168.101.10:1541; Ошибка сетевого доступа к серверу (Windows Sockets-10065(0x00002751). Сделана попытка выполнить операцию на сокете для недоступного хоста); lin=545 file=srcDataExchange TcpClientlmpl.cpp
Приехали. Я так понял, что с сети не видно сервера. Хотя через самбу я его вижу и даже пишу в расшаренную папку. А вот сервера 1С, видимо не видно. И как его открыть для сети?
Пройди в оснастку управления и администрирования сервером 1С предприятие. Зайди в свой кластер и обрати внимание на «Рабочие серверы». Удали то что там сейчас и укажи реально существующий сервер. После этого возможно потребуется создать рабочие процессы.
Скачай с офф.сайта производителя патчи, если сам сервер Postgres не с офф. сайта.
«Serv1С» надо прописать в hosts.
Для начала рабочий сервер поправьте в кластере. Я почему-то думаю что postgres у тебя с офф.сайта.
Установи ее на виндовс машине и мышкой нашелкай, или поправь все в файле сервера 1С на Линукс
Вы вообще не в теме, да?
Человек слабо понимает, что делает, и вообще не понимает, что ему говорят. На днях этот же вопрос он уже задавал.
База PostgreSQL и «информационная база» 1С имеют между собой примерно столько же общего, сколько база автомобиля и база отдыха.
Дружище, ты не там ищешь ответы. Тебе придётся сесть и изучить документацию вообще по всему, что ты используешь, научится диагностике и решению проблем.
А когда ты станешь гуру pgsql и 1с, ты поймёшь, какой бесполезнейшей хернёй ты вообще занимаешься. Связка 1C+pgsql не даст тебе никакого прироста в производительности, напротив, такая связка гарантированно хуже в этом плане чем 1с+дефолтный mssql, даже если ты базы утащишь в рамфс и воткнёшь столько мощных процессоров, сколько у тебя хватит фантазии. И дело не в тебе и не в pgsql, дело в 1С.
Но я тебя обрадую, (не в даваясь в историю появления mssql) 1С под linux идеально чувствует себя в связке с db2 от ibm. Эффект «вау» от бухгалтеров гарантирован и отсутствие нервотрёпок в дальнейшим тоже. Да, для использования больше 2Гб памяти она требует покупку лицензии, очень не дешёвой.
Тебе придётся сесть и изучить документацию вообще по всему
Когда тебе дают ссылку на коротенький ман по включению отладочных сообщений сервера, достаточно умения читать.
Связка 1C+pgsql не даст тебе никакого прироста в производительности, напротив, такая связка гарантированно хуже в этом плане чем 1с+дефолтный mssql
1С под linux идеально чувствует себя в связке с db2 от ibm.
Близко к 4.2. Заливку dt по 10 часов уже починили? Администрирование этого чуда даже не рассматриваем.
У меня клиентские базы далеко не ИП, но почему-то прекрасно себя с постгресом чувствуют, и типовые, и собственные. Про кучу лишнего времени мимо. Ну а про «одну лицензию на винду» как-то даже не смешно.
Ты не берёшься утверждать что производительность pgsql лучше чем db2, у тебя всё отлично и так. Хорошо, сколько гигабайт твоя база и сколько в ней работает человек?
Надеюсь, что ты пробовал не триальную версию с ограничением в процессорах, памяти и процессах.
Заливку dt по 10 часов уже починили?
А что была какая-то проблема у тех кто догадался прочитать документацию? У меня таких проблем нет.
Администрирование этого чуда даже не рассматриваем
А какие проблемы с администрированием? И она не чудо, она «суровый энтерпрайз» со всеми вытекающими плюсами и минусами.
Давай пойдём по пути простой логики, как ты думаешь, что движет людьми, что они заменяют mssql и pgsql на db2? Ну или не заменяют, а хотя бы пытаются?
Я не агитирую за db2, у меня к ней тоже есть претензии, но они нивилируются удовлетворением от производительности. К сожалению, pgsql мне эту радость не подарил, и мне жаль потраченного на него времени при решения задачи «обеспечить производительность выше mssql». Я работал с базами 15-80Гб с 20-40 активными юзерами, это было лето 2011г.
p.s. допускаю, что за последние почти 2 года произошёл какой-то прорыв в связке с pgsql, но зная инертность 1с разработчиков, просто в это не верю.
Ты не берёшься утверждать что производительность pgsql лучше чем db2.
Конечно нет, фирма 1С тоже вот не берётся. Про сферические базы со сферическими пользователями я уже писал. По опыту могу сказать, что серьёзные затыки с производительность обычно связаны с нюансами учётных алгоритмов, и не решаются ни железом, ни настройкой чего-либо. Только изменение/оптимизация алгоритма.
Хорошо, сколько гигабайт твоя база и сколько в ней работает человек?
Ок, есть база на 50Гб с 30+ пользователями. Внезапно, на постгресе чувствует себя лучше, чем на скуле.
А что была какая-то проблема у тех кто догадался прочитать документацию?
Ага, посмотри закрытый форум.
как ты думаешь, что движет людьми, что они заменяют mssql и pgsql на db2?
Отсутствие программистов в штате? Имеющийся db2? 🙂
но зная инертность 1с разработчиков, просто в это не верю.
Всем бы такую инертность, за 5 лет полностью переписать платформу, реализовать полноценный клиент-сервер, кроссплатформенность, веб-клиента, декларативное описание интерфейса и ещё обеспечивать обратную совместимость.
Источник
Ошибка субд: database не пригоден для использования
В этой статье показан пример общих принципов разбора технологических вопросов, которые могут появляться при работе с 1С:Предприятие 8.1.
В качестве примеров будут разобраны:
Пример 1. Пользователь пожаловался на невозможность запуска 1С:Бухгалтерия.
Пример 2. «Потерялся» доступ к информационной базе.
Ошибка при выполнении операции с информационной базой
Microsoft OLE DB provider for SQL Server: Login failed for user ‘user1c’
H RESULT=80040E4D, SQLSrvr: Error state=1, Severity=E, native=18456, line=1
Пример 3. Странная «неизвестная» ошибка.
Текст сообщения: «Произошла неизвестная ошибка на сервере 1С предприятие (80010108)»
1. Определение текста (проявления) ошибки и локализация источника возникновения
net start Агент сервера 1с:Предприятие 8.1
Если сервер приложений не стартует, в некоторых случаях сделайте копию папки C:Program Files1cv81server и удалите содержимое перед попыткой старта.
Файловый режим 1С: Предприятия 8.3 предполагает хранение информационных данных программы в виде файлов, объединенных в одну папку. Для каждой информационной базы (ИБ) создается отдельная папка, адрес которой можно увидеть в окне запуска программы:
Каждая папка данных 1С – набор системных файлов, среди которых 1Cv8.1CD и есть основной файл ИБ, содержащий введенные пользователями первичные данные, структуру конфигурации и механизмы ее работы:
Сохранение информационной базы
Сохранение копии информации программ 1С на внешний носитель или облачный ресурс настоятельно рекомендуется выполнять ежедневно, а при активной деятельности и большом объеме документов – и несколько раз в день. Это поможет избежать мучительного восстановления данных в случае сгоревшего жесткого диска, неудачного обновления программы, вирусной атаки.
Выгрузка базы данных 1С может осуществляться несколькими способами:
В режиме «Конфигуратор» следует выбрать пункт меню:
И сохранить выгружаемый файл с расширением dt, содержащий упакованные информационные данные и структуру конфигурации, в любой удобный каталог:
Экспорт базы из 1С в указанный каталог успешно выполнен:
Восстановление информационной базы
При выборе первого способа экспорта конфигурации 1С загрузка базы осуществляется подключением каталога в окне запуска программы (Добавить – Добавление в список существующей информационной базы) с последующим выбором папки, содержащей копию:
Для второго случая импорт базы 1С выполняется также в режиме «Конфигуратор». В меню «Администрирование» следует выбрать команду «Загрузить информационную базу» и указать файл выгрузки *.dt:
Следует согласиться с предупреждением о перезаписи данных, нажав кнопку «Продолжить».
При успешной загрузке файла информационных данных на экране будет выведено соответствующее сообщение:
Если дальнейшая работа в конфигураторе не предполагается, следует ответить «Нет».
Ошибки информационной базы и их решение
Нередки случаи, когда из-за случайных перепадов напряжения в сети, неудачного или неполного обновления ИБ, разрушения жесткого диска, на котором расположен каталог данных или вирусная атака приводят к нарушению структуры конфигурации и потере данных. Конфигурация 1С в таких случаях может не запускаться вовсе с выдачей соответствующих сообщений или запускаться, но работать некорректно.
Если копия данных по каким-либо причинам не была сохранена и восстановление ее достойным вариантом невозможно, необходимо выполнить для конфигурации 1С проверку целостности базы – возможно, но вовсе не обязательно она поможет решить проблемы.
Тестирование и исправление
Для одновременного применения исправлений к данным и структуре необходимо установить радиоточку в положение «Тестирование и исправление».
Программная обработка «Тестирование и исправление» проверяет и исправляет внутреннюю структуру конфигурации и информационных данных. За проверку физической целостности базы отвечает файл chdbfl.exe.
Этим файлом также осуществляется проверка базы на ошибки и расположен он в каталоге установки технологической платформы:
Форма этой проверки проста – достаточно выбрать файл информационной базы, установить флажок автоматического исправления ошибок и нажать на кнопку «Выполнить», Программа при этом должна быть закрыта у всех пользователей и, как всегда, выполнено резервное копирование:
При успешном окончании проверки будет выдано соответствующее сообщение:
Если рассмотренные здесь методы тестирования и восстановления данных должного результата не принесли, для восстановления целостности информационной базы и исправления ошибок следует обратиться к квалифицированным специалистам 1С.
Совет: своевременно выполненные архивные копии данных помогут если не избежать, то быстро и легко восстановить программу после непредвиденного сбоя, всего лишь откатив программу до актуальности ее копии.
Связка сервера 1С:Предприятие и PostgreSQL вторая по популярности среди установок 1С и самое используемое решение на платформе Linux. В отличии внедрений на базе Windows и MSSQL, где трудно сделать так, чтобы не заработало, внедрения на базе Linux таят множество подводных камней для неопытного администратора. Часто бывает так, что вроде бы все сделано правильно, но ошибка следует за ошибкой. Сегодня мы рассмотрим самые типовые из них.
Общая информация
Перед тем, как начинать искать ошибки установки и, вообще, приступать к внедрению серверной версии 1С:Предприятия было бы неплохо освежить представление как это работает:
В небольших внедрениях сервер 1С и сервер СУБД обычно совмещают на одном физическом сервере, что немного сужает круг возможных ошибок. В нашем случае будет рассматриваться ситуация, когда сервера разнесены по разным машинам. В нашей тестовой лаборатории мы развернули следующую схему:
ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (Ident)
Host all all 192.168.31.0/24 ident
и приведите ее к виду:
Host all all 192.168.31.0/24 md5
Сервер баз данных не обнаружен
could not translate host name «NAME» to address: Temporary failure in name resolution
На первый взгляд ошибка понятна: клиент не может разрешить имя сервера СУБД, типичная ошибка для небольших сетей, где отсутствует локальный DNS-сервер. В качестве решения добавляют запись в файл hosts на клиенте, что не дает никакого результата.
А теперь вспоминаем, о чем было сказано несколько раньше. Клиентом сервера СУБД является сервер 1С, но никак не клиентский ПК, следовательно запись нужно добавлять на сервере 1С:Предприятие в файл /etc/hosts на платформе Linux или в на платформе Windows.
Аналогичная ошибка будет возникать, если вы забыли добавить запись типа A для сервера СУБД на локальном DNS-сервере.
Ошибка при выполнении операции с информационной базой
server_addr=NAME descr=11001(0x00002AF9): Этот хост неизвестен.
Как и прошлая, эта ошибка связана с неправильным разрешением клиентом имени сервера. На этот раз именно клиентским ПК. В качестве решения добавляем в файл /etc/hosts на платформе Linux или в C:WindowsSystem32driversetchosts на платформе Windows запись вида:
где указываете адрес и имя вашего сервера 1С:Предприятия. В случае использования локального DNS следует добавить A-запись для сервера 1С.
Ошибка СУБД: DATABASE не пригоден для использования
Также данная ошибка может возникать при использовании сборок 9.1.x и 9.2.x [email protected] , подробности смотрите ниже.
Ошибка СУБД:
ERROR: could not load library «/usr/lib/x86_64-linux-gnu/postgresql/fasttrun.so»
Ошибка СУБД
ERROR: type «mvarchar» does not exist at character 31
Возникает если база данных была создана без помощи системы 1С:Предприятия. Помните, для работы с 1С базы данных следует создавать только с использованием инструментов платформы 1С: через консоль
или через средство запуска 1С.
Сервер баз данных не обнаружен
ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (по паролю)
Сервер баз данных не обнаружен
FATAL: database «NAME» does not exist
Источник
Ошибки СУБД. 1С+PostgreSQL+Linux. Часть 2.
Ошибка СУБД:
Продолжение сообщения может быть различным:
DATABASE не пригоден для использования
Пример полного текста ошибки:
Описание ошибки:
База не запускается после установки и создания.
Решения:
Установим версию предназначенную для работы с 1С:Предприятием. Скачать такую можно с сайта 1С (при наличии купленного ИТС и открытого доступа), или приобрести у PostgresPro.
Либо проверим все ли зависимости были установлены. И установим недостающие.
ERROR: type «tt7» already exists
Пример полного текста ошибки:
Описание:
Данная ошибка является «плавающей» и может возникать в различных местах
Решение:
Выгрузим и загрузим базу данных средствами 1С:Предприятия(через файл *.dt).
ERROR: could not read block
Описание ошибки:
База не запускается. Разрушились диски.
Решения:
Переносим базу на другую дисковую систему.
Разворачиваем из резервной копии.
Не удалось запустить сервер PostgreSQL
Пример полного текста ошибки:
Описание:
Такая ситуация часто случается у начинающих администраторов в случае, если они хотят инициализировать сервер в каталог отличный от каталога по умолчанию. При этом сервер уже запустили из каталога по умолчанию.
В этой ситуации при попытке запуска видно ошибку – сервер не запускается.
А при проверке состояния видно, что сервер работает.
Если проверим запущенные процессы пользователя postgres, то можно увидеть, что порт 5432 занят кластером PostgreSQL, только запущенным из каталога по умолчанию.
Решение:
Остановим работающий кластер сервера СУБД.
Инициализируем кластер из нового каталога(если он не инициализирован).
Запустим из нового каталога.
Длительный запуск 1С:Предприятия при работе с СУБД PostgreSQL
Описание:
Длительный запуск, длительный захват объектов в хранилище, длительное сохранение конфигурации 1С:Предприятия.
Решение:
Такая проблема может быть связано с настройками СУБД PostgreSQL.
Рассчитаем настройки СУБД.
Описание настроек приведено на ИТС.
Выполним настройки, для этого перейдем в терминал psql:
Через psql установим параметры командой ALTER SYSTEM SET(параметры необходимо указать для вашей СУБД):
Из файла *xlsx загружаются в 1С иероглифы/ в файл выгружаются иероглифы.
Описание ошибки:
При загрузке данных из файла *.xlsx в 1С отображаются иероглифы. Используемая СУБД PostgreSQL/PostgresPro.
Также возможна проблема с кодировкой в выгружаемом файле из 1С:
Решение:
На сервере СУБД проверим и выполним настройку локали.
1. Проверим наличие локали:
2. Проверим переменную:
Корректное значение результатов выполнения команд 2, 3:
3. Если результат не соответствует, выполним:
5. Выполним перезапуск серверов СУБД
Еще можно посмотреть
Установка двух версий сервера 1С на Linux
Пошаговый процесс установки и запуска двух версий сервера 1С на Linux. Полное описание настройки второго экземпляра сервера 1С.
Ошибки публикации базы и веб сервиса на веб сервере 1C+ Apache +Linux.
Многие из нас привыкли публиковать базу или веб сервис 1С нажатием нескольких кнопок. Но не все из многих знают, что для этого необходимо запустить(от имени администратора!) конфигуратор 1С:Предприятие именно на той машине, где установлен веб сервер(а именно компонента веб-расширения 1С:Предприятия). В случае, если веб-сервер и компонента веб-расширения 1С:Предприятия установлены на машину с ОС Linux без […]
Администрирование серверов 1С на Linux
Привычным для нас инструментом управления кластером серверов 1С является консоль «Администрирование серверов 1С Предприятия» — «Microsoft Management Console». Данная консоль позволяет выполнять все необходимые действия по администрированию кластеров серверов 1С:Предприятия. Но, она имеет один недостаток – её невозможно использовать под ОС Linux. Но не все так плохо. Альтернативными средствами администрирования серверов 1С на Linux являются: […]
Установка PostgreSQL для 1С на Linux
Пошаговый процесс установки СУБД PostgreSQL для 1С на Linux сервер.
Публикация 1С на Веб сервере Apache Linux
Пошаговые инструкции по публикация базы и web-сервисов 1С на веб-сервере Apache 2.4 на Linux.
Установка и настройка хранилища конфигураций 1C на Linux сервере
Хранилище конфигурации 1С:Предприятия 8.3 является инструментом групповой разработки. Настраиваем сервер хранилища на Linux.
Основные команды Linux
Список основных команд консоли Linux которые потребуются при установке и настройке 1С. Примеры использования с комментариями.
Источник
-
22.09.2011, 04:51
#1
Гость форума
Установка 1С сервер82+PostgreSQL, Проблема с повторным созданием БД
Здравствуйте,
Конфигурация следующая: Windows 7 x64, 1С предприятие 8.1.15.14 + 1С сервер81, 1С предприятие 8.2.14.533 + 1С сервер82…работает на эмуляторе, все для тестирования.
Все настроил согласно тысячам инструкций и описаний в интернете…
Обе службы (81 и 82) работают под пользователем postrges с паролем *****
Создал по базе для каждой платформы, обе базы работают и по сей день.
А теперь проблема: При попытке создать еще одну базу под любой из платформ пишет ошибку:Ошибка при создании информационной базы
Сервер баз данных не обнаружен
FATAL: no pg_hba.conf enty for host @fe80::855C:766D:9889:6a04%11″, user «Postgres», database «template 1»Пытался найти решение в и-нете и на форуме, но ничего толкового так и не представилось…
Не понимаю с чем связано, есть подозрение на эмулятор. В первый раз все как по учебнику было.
Заранее огромное спасибо.
-
22.09.2011, 07:23
#2
Гордость форума PRO
А базу пытаешься создать средствами 1С? А не пробовал создать вначале «пустую базу» средствами самого PostgreSQL, а затем лишь «отразить» 1С на эту базу?
Судя по диагностики у тебя грабли именно при попытки создания базы в PostgreSQL средствами самой 1С.
Вот что кстати инет говорит про «pg_hba.conf»
Client authentication is controlled by a configuration file, which traditionally is named pg_hba.conf and is stored in the database cluster’s data directory. (HBA stands for host-based authentication.) A default pg_hba.conf file is installed when the data directory is initialized by initdb. It is possible to place the authentication configuration file elsewhere, however; see the hba_file configuration parameter.
The general format of the pg_hba.conf file is a set of records, one per line. Blank lines are ignored, as is any text after the # comment character. A record is made up of a number of fields which are separated by spaces and/or tabs. Fields can contain white space if the field value is quoted. Records cannot be continued across lines.
Each record specifies a connection type, a client IP address range (if relevant for the connection type), a database name, a user name, and the authentication method to be used for connections matching these parameters. The first record with a matching connection type, client address, requested database, and user name is used to perform authentication. There is no «fall-through» or «backup»: if one record is chosen and the authentication fails, subsequent records are not considered. If no record matches, access is denied.
A record may have one of the seven formats
local database user auth-method [auth-option]
host database user CIDR-address auth-method [auth-option]
hostssl database user CIDR-address auth-method [auth-option]
hostnossl database user CIDR-address auth-method [auth-option]
host database user IP-address IP-mask auth-method [auth-option]
hostssl database user IP-address IP-mask auth-method [auth-option]
hostnossl database user IP-address IP-mask auth-method [auth-option]А у тебя получается запись в этом файле следующая:
host @fe80::855C:766D:9889:6a04%11
user «Postgres»
database «template 1»вот и получаешь свой «access is denied»
Удачи
-
23.09.2011, 05:11
#3
Гость форума
Сообщение от avm3110
А базу пытаешься создать средствами 1С? А не пробовал создать вначале «пустую базу» средствами самого PostgreSQL, а затем лишь «отразить» 1С на эту базу?
Судя по диагностики у тебя грабли именно при попытки создания базы в PostgreSQL средствами самой 1С.
А у тебя получается запись в этом файле следующая:
host @fe80::855C:766D:9889:6a04%11
user «Postgres»
database «template 1»вот и получаешь свой «access is denied»
Удачи
Спасибо за ответ.
Проблема решена, ошибка: неправильно создание базы, неправильное заполнение полей. Смешно, но это так)))