Ошибки СУБД. 1С+PostgreSQL+Linux. Часть 1.
Ошибка 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?
Далее рассмотрим подробнее каждую ошибку.
Could not translate host name «NAME» to address: Temporary failure in name resolution
Пример полного текста ошибки:
|
1 2 |
Сервер баз данных не обнаружен could not translate host name "NAME" to address: Temporary failure in name resolution |

Описание:
Ошибка может возникать как при создании базы, так и при запуске информационной базы.
Решение:
Настроим DNS-адресацию или пропишем адреса в файл hosts. Обратите внимание, что в данном случае проблема в том, что на сервере 1С нет информации о доменном имени сервера СУБД PostgreSQL. Подробнее о DNS — Настройка DNS-адресации для 1С сервера.
ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (Ident)
Пример полного текста ошибки:
|
1 2 |
Сервер баз данных не обнаружен ВАЖНО: пользователь "postgres" не прошёл проверку подлинности (Ident) |

Описание: Ошибка возникает при создании базы.
Решение:
Настроим проверку подлинности.
-
- Сконфигурируем доступ к серверу PostgreSQL в файле: pg_hba.conf:
|
1 |
vim /var/lib/pgsql/11/data/pg_hba.conf |
Файл должен содержать только следующие строки (содержащие ip серверов 1С) (остальные удалим или пометим как комментарий):
|
1 2 3 4 5 |
# TYPE DATABASE USER ADDRESS METHOD local all all trust host all all «Указать ip-адрес сервера 1С» md5 |
Строк должно быть, соответственно, несколько, если серверов 1С несколько в кластере.
Последняя колонка указывает на метод авторизации.
Если пока теряетесь в настройках доступа. Для понимания, можно сначала открыть все, запустить сервер.
|
1 2 3 4 5 |
# TYPE DATABASE USER ADDRESS METHOD local all all trust host all all 0.0.0.0/0 trust |
А после удачного старта сервера СУБД разбираться с настройками доступа.
ВАЖНО: в pg_hba.conf нет записи для компьютера «», пользователя «usr1cv8», базы «template»
Пример полного текста ошибки:
|
1 |
Сервер баз данных не обнаружен ВАЖНО: в pg_hba.conf нет записи для компьютера «», пользователя «usr1cv8», базы «template». |

Описание ошибки:
Ошибка связана с отсутствием прописанного доступа к базе данных в файле pg_hba.conf
Решение:
Добавим запись в файл pg_hba.conf.
Приведем пример содержания файла, который открывает доступ:
|
1 2 3 4 5 |
# 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?
Пример полного текста ошибки:
|
1 |
Сервер баз данных не обнаружен 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.
|
1 |
netstat –tlnp | grep 5432 |
Или
|
1 |
ss –tlnpu | grep 5432 |
1.1. Если по результатам проверки видим, что не запущен процесс, то необходимо его запустить.
|
1 |
service postgresql-11 start |
1.2. Если по результатам проверки видим, что процесс запущен, но слушает только «себя» 127.0.0.1.

То выполним ряд настроек.
Отредактируем конфигурационный файл
|
1 |
vim /var/lib/pgsql/11/data/postgresql.conf |
Укажем там настройку:
|
1 |
listen_addresses = '*' |
1.3. Если видим, что процесс запущен

То переходим к следующем пункту.
2. Проверим доступность процесса по порту, который он «слушает».
С сервера 1С выполним команду(в нашем случае имя сервера СУБД «1s-on-pg-1»):
|
1 |
telnet 1s-on-pg-1 5432 |
Если доступ отсутствует – то мы увидим нечто подобное:
|
1 |
Подключение к 333.33.33.xx...Не удалось открыть подключение к этому узлу, на порт 5432: Сбой подключения |
К причинам отсутствия доступа по данному порту можно отнести:
- Блокировка брадмауэром или другими подобными программами;
- Отсутствие доступа на уровне сети.
2.1. Проверим статус файерволла.
|
1 |
systemctl status firewalld |
Если файерволл работает и блокирует порт 5432, то.
Отключим firewall:
|
1 |
systemctl stop firewalld |
и отключим автозапуск.
|
1 |
systemctl disable firewalld |
Результат должен быть следующим:
|
1 |
systemctl status firewalld |

или
настроим, открыв порт 5432.
|
1 2 3 |
iptables -t filter -I INPUT -p tcp --dport 5432 -j ACCEPT service iptables save |
«Породить новый процесс для соединения не удалось: Ресурс временно недоступен» или «ВАЖНО: извините, уже слишком много клиентов»
Пример полного текста ошибки:
|
1 |
Сервер баз данных не обнаружен породить новый процесс для соединения не удалось: Ресурс временно недоступен |
или
|
1 |
Сервер баз данных не обнаружен ВАЖНО: извините, уже слишком много клиентов |

Описание:
В процессе работы выдается ошибка
Решение:
Изменим настройку в файле postgresql.conf
|
1 |
max_connections=500 |
Данное число, должно быть примерно в 1.5 раза больше максимального количества пользователей.
Установим ее:
-
- Перейдем в терминал psql.
|
1 |
psql |
-
- Через psql установим следующие параметры командой ALTER SYSTEM SET:
|
1 |
ALTER SYSTEM SET max_connections=500; |
FATAL: database «base» does not exist
Пример полного текста ошибки:
|
1 2 |
Сервер баз данных не обнаружен FATAL: database "base" does not exist |

Описание:
При запуске базы данных выдается ошибка, которая говорит о том, что данная база не существует.
Решение:
Проверим наименование базы данных и информационной базы. Сделать это можно в консоли администрирования 1С в свойствах базы.
Учтём, что Linux чувствителен к регистру(Base/base/BASE – для него это разные имена баз).

Еще можно посмотреть
Ошибки на клиенте при подключении к серверу 1С на Linux. Часть 1
Рассмотрены ошибки при подключении к серверу 1С на Linux. Изложена методика поиска причин и путей их исправления
Основы работы в Linux
Основы работы в Linux. Как подключиться к серверу. Как скопировать файлы на сервер. Редактирование конфигурационных файлов.
Основные команды Linux
Список основных команд консоли Linux которые потребуются при установке и настройке 1С. Примеры использования с комментариями.
Проверка рабочих процессов сервера 1С на Linux
Как проверить на Linux запущены ли процессы сервера 1С. Проверка открытых портов сервера 1С
НАСТРОЙКА PG_PROFILE ДЛЯ POSTGRESQL 1.
Помимо анализа планов и запросов СУБД в технологическом журнале 1С, также бывает полезным анализировать статистику по запросам в pg_profiler. Тем более, что она уже собирается в сгруппированном по запросам виде. Ниже приведем инструкцию по его настройке. 1. Инсталляция и настройка pg_profile. 2. Настройка отображения pg_profile через веб-сервер apache. Инсталляция и настройка pg_profile. 1. Скачаем pg_profile […]
Отладка на сервере 1С на Linux
Настройка отладки на Linux сервере 1С. Пошаговый процесс настройки tcp и http отладки.
Установка двух версий сервера 1С на Linux
Пошаговый процесс установки и запуска двух версий сервера 1С на Linux. Полное описание настройки второго экземпляра сервера 1С.
Похожие записи
- Подключение репозитория под ОС Linux
- Ошибка 1С:Предприятие «Потеряно соединение»
- Что такое PG_TEMP в PostgreSQL для 1С
- НАСТРОЙКА PG_PROFILE ДЛЯ POSTGRESQL 1.
- Статистика PostgreSQL при работе с 1С:Предприятием
- Очистка кэша: серверного и клиентского для 1С:Предприятия
- Настройка непрерывного архивирования (point-in-time-recovery, PITR) в PostgresPro 11 Linux
- Пропажа индексов дескрипторов в 1С:Документообороте
- 1C тормозит и возникают ошибки. С чего начать расследование?
- Анализ технологического журнала 1С регулярными выражениями. От простого к сложному.





