В процессе эксплуатации клиент-серверного варианта 1С:Предприятие системные администраторы часто сталкиваются с ситуацией, когда стабильно работавшая система внезапно перестает пускать пользователей. При этом попытка входа в базу или конфигуратор прерывается сообщением: «Microsoft SQL Server Native Client 11.0: Поставщик именованных каналов: Не удалось открыть соединение с SQL Server [1326]». Ситуация осложняется тем, что сам SQL-сервер может успешно «пинговаться», а подключение через среду SQL Server Management Studio (SSMS) проходит без проблем. Рассмотрим подробно, как диагностировать и устранить эту проблему, опираясь на практический опыт и технические особенности взаимодействия 1С и СУБД.
Одной из наиболее распространенных причин возникновения ошибки 1326 является блокировка сетевых портов брандмауэром Windows (Windows Firewall). Проанализируем типичный сценарий: после автоматического обновления операционной системы Windows Server (особенно версий 2019 и 2022) настройки сетевого экрана могут сброситься к параметрам «по умолчанию», что приводит к закрытию ранее открытых портов. Выясним, какие именно порты необходимы для корректной работы.
Разберем по шагам настройку исключений в брандмауэре на стороне SQL-сервера и сервера приложений 1С (здесь также может быть полезен монитор кластеров серверов):
1433. Если вы используете именованные экземпляры или динамические порты, также необходимо открыть UDP-порт 1434 для работы службы SQL Server Browser.1540 (агент сервера), 1541 (главный менеджер кластера) и диапазон рабочих процессов 1560-1591.Проверить доступность порта можно с помощью утилиты telnet, командной строки Windows или командлета PowerShell. Рассмотрим пример проверки связи с SQL-сервером:
Test-NetConnection -ComputerName "ИМЯ_СЕРВЕРА_SQL" -Port 1433
Если результат проверки отрицательный, необходимо создать правила для входящих соединений в мониторе брандмауэра Windows для вышеуказанных портов.
Рассмотрим ситуацию, когда порты открыты, но ошибка сохраняется. Проанализируем настройки подключения в консоли администрирования серверов 1С или в окне добавления информационной базы — здесь поможет обработка для администрирования кластеров и информационных баз 1С. Часто ошибка кроется в том, как именно указан путь к серверу баз данных.
Если при установке MS SQL Server был выбран «Именованный экземпляр» (Named Instance) вместо «Экземпляра по умолчанию» (Default Instance), то в строке «Сервер баз данных» недостаточно просто написать сетевое имя компьютера. Выясним правильный формат записи:
В поле «Сервер баз данных» необходимо указывать строку вида: ИМЯ_СЕРВЕРА\ИМЯ_ЭКЗЕМПЛЯРА. Например, если сервер называется SRV-DB, а экземпляр SQL при установке был назван SQL2019, то строка подключения должна выглядеть как SRV-DB\SQL2019. Посмотрим на строку подключения, которую использует платформа 1С в своих настройках:
Srvr="1CERP";Ref="1cerp_prod";
DataAddr="SRV-DB\SQL2019";
Важно помнить: если используется именованный экземпляр, служба SQL Server Browser должна быть обязательно запущена, так как именно она сообщает клиенту 1С, на каком динамическом порту в данный момент работает указанный экземпляр SQL.
Разберем еще один критически важный аспект — включение протокола TCP/IP в настройках самого SQL-сервера. Проанализируем специфику последних версий СУБД, таких как SQL Server 2022. В них протокол TCP/IP может быть отключен по умолчанию в целях безопасности.
Для исправления ситуации выполним следующие действия:
TCP/IP установлен в значение Enabled.TCP/IP на вкладку IP Addresses.1433 (или другой порт, если вы используете нестандартную настройку).После внесения изменений обязательно перезапустим службу SQL Server для вступления настроек в силу, а также не забудем про регламентные операции MS SQL SERVER.
Проанализируем техническую сторону вопроса на уровне драйверов. В тексте ошибки часто фигурирует Microsoft SQL Server Native Client 11.0. Это устаревший драйвер, который может некорректно работать в современных инфраструктурах (Windows Server 2022 + SQL Server 2022).
Современные версии Windows по умолчанию отключают устаревшие протоколы шифрования TLS 1.0 и 1.1. Если ваш Native Client не обновлен до последних патчей, он не сможет установить защищенное соединение с SQL по протоколу TLS 1.2, что приведет к ошибке «Сервер не найден».
Рассмотрим рекомендации по обновлению стека драйверов:
Если разрешение имен в сети (DNS) работает нестабильно или серверы находятся в разных подсетях, мы можем применить «хитрость» — создание сетевого псевдонима (Alias). Это позволит серверу 1С обращаться к SQL-серверу напрямую по IP-адресу, даже если в настройках 1С указано имя.
Разберем процесс настройки через cliconfg.exe:
C:\Windows\System32\cliconfg.exe на сервере, где установлен сервер приложений 1С.SQL-SERVER).1433 вручную.Этот метод часто помогает обойти проблемы с Named Pipes Provider, принудительно переводя все запросы на протокол TCP/IP.
Подводя итоги, проанализируем последовательность действий при возникновении ошибки соединения. Мы выяснили, что проблема редко заключается в самой платформе 1С, чаще это вопрос сетевой связности и настроек СУБД. Пройдемся по контрольному списку:
1C:Enterprise Server Admin и SQL Server запущены и выполняются.1433, 1434 и диапазону 1540-1591.dbcreator и processadmin на SQL-сервере (хотя это обычно вызывает другую ошибку, проверить стоит).Используя этот комплексный подход, мы сможем оперативно восстановить работоспособность системы 1С:Предприятие и минимизировать простой бизнеса.