Как исправить ошибки при создании информационной базы 1С на кластере серверов MS SQL?

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

При первичной установке и настройке клиент-серверного варианта 1С:Предприятия специалисты часто сталкиваются с неполадками на этапе создания новой информационной базы. Разберем по шагам две самые распространенные проблемы: когда кластер 1С не может достучаться до системы управления базами данных (СУБД) MS SQL Server, и когда возникает ошибка разрешения сетевых имен 11001(0x00002AF9): No such host is known.

1. Разбор ошибки «Сервер баз данных не обнаружен» (Named Pipes Provider)

Рассмотрим ситуацию, когда при попытке создания информационной базы платформа выводит сообщение:

Microsoft SQL Server Native Client 11.0: Named Pipes Provider: Could not open a connection to SQL Server [2]... SQLSTATE=08001

Эта ошибка означает, что сервер приложений 1С:Предприятия не может установить соединение с сервером СУБД. Выясним основные причины такого поведения:

  1. Некорректно указано имя сервера баз данных. Если на сервере установлен MS SQL Server Express, то по умолчанию создается именованный экземпляр, к которому нужно обращаться в формате ИМЯ_СЕРВЕРА\SQLEXPRESS. Если же используется дистрибутив MS SQL Server Standard или Enterprise со стандартным экземпляром, достаточно указать только ИМЯ_СЕРВЕРА или localhost (если СУБД расположена на том же физическом/виртуальном сервере).
  2. Отключены сетевые протоколы SQL Server. По умолчанию в редакции SQL Server Express протоколы TCP/IP и Named Pipes могут быть выключены.
  3. Остановлена служба SQL Server Browser. При использовании именованного экземпляра (например, SQLEXPRESS) служба SQL Server Browser определяет, на каком динамическом порту работает данный экземпляр. Если эта служба остановлена, клиент не может узнать нужный порт.
  4. Блокировка брандмауэром (Firewall). Защитник Windows или сторонний антивирус может блокировать входящий трафик на порт СУБД (по умолчанию TCP 1433) и порт службы поиска экземпляров (UDP 1434).

2. Настройка сетевого доступа к MS SQL Server

Проанализируем порядок действий для устранения проблемы с подключением к СУБД:

  1. Проверим состояние служб Windows на сервере СУБД. Служба SQL Server (MSSQLSERVER) или SQL Server (SQLEXPRESS) должна находиться в состоянии Работает. Если используется именованный экземпляр, найдем и запустим службу SQL Server Browser, установив для нее тип запуска Автоматически.
  2. Откроем оснастку SQL Server Configuration Manager. Перейдем в раздел SQL Server Network Configuration > Protocols for MSSQLSERVER (или для вашего экземпляра) и убедимся, что протоколы TCP/IP и Named Pipes переведены в состояние Enabled (Включено). После изменения настроек обязательно перезапустим службу SQL Server.
  3. Проверим настройки брандмауэра. Добавим правило для входящих подключений по порту TCP 1433 (для стандатной работы SQL) и порту UDP 1434 (для работы SQL Server Browser).
  4. Убедимся в настройках авторизации SQL Server. В консоли SQL Server Management Studio (SSMS) откроем свойства сервера и во вкладке Security (Безопасность) убедимся, что выбран режим смешанной аутентификации — SQL Server and Windows Authentication mode. Это необходимо, если в параметрах создания базы 1С вы указываете пользователя СУБД (например, sa).

3. Причины ошибки 11001 (No such host is known / Этот хост неизвестен)

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

Ошибка соединения с сервером 1С:Предприятия 8.3: server_addr=имя_сервера descr=11001(0x00002AF9): No such host is known.

Выясним механику работы кластера 1С, которая приводит к этому сбою. Когда клиентское приложение или утилита администрирования обращается к менеджеру кластера (процесс ragent.exe), сервер 1С возвращает клиенту свое сетевое имя (NetBIOS-имя), прописанное в параметрах рабочего сервера. Если компьютер, с которого выполняется подключение, не может сопоставить это сетевое имя с IP-адресом через службы DNS или WINS, возникает ошибка кодовой страницы сокетов 11001.

4. Варианты устранения ошибки разрешения сетевых имен

Разберем по шагам доступные способы решения данной проблемы:

  1. Использование IP-адреса или localhost. Если попытка создания информационной базы осуществляется непосредственно на том же сервере, где запущен процесс ragent.exe, в поле подключения к кластеру серверов 1С можно указать localhost или 127.0.0.1 вместо сетевого имени.
  2. Редактирование файла hosts. На компьютере, с которого вы подключаетесь к кластеру (а также на самом сервере 1С), откроем файл сопоставления имен C:\Windows\System32\drivers\etc\hosts от имени Администратора и добавим строку вида:

    192.168.1.100 SERVERNAME

    где 192.168.1.100 — статический IP-адрес сервера 1С, а SERVERNAME — точное сетевое имя сервера, указанное в свойствах системы.
  3. Проверка FQDN и DNS-записей. Если сервер находится в домене, можно указать полное доменное имя (FQDN), например server.domain.local. Также необходимо убедиться, что на локальном DNS-сервере сети создана корректная A-запись для рабочего сервера 1С.
  4. Корректировка адреса рабочего сервера в консоли 1С. В оснастке администрирования кластера серверов 1С:Предприятия откроем свойства рабочего сервера и в поле Сетевое имя пропишем его IP-адрес или FQDN-имя, чтобы кластер отдавал клиентам заведомо разрешимый адрес.
← На главную