Можно ли подключить сервер приложений 1С на Linux к базе данных MS SQL Server?

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

Вопрос использования MS SQL Server в связке с сервером приложений 1С под управлением Linux становится все более актуальным. Это связано с тем, что компания Microsoft выпустила полноценные версии своей СУБД для операционных систем семейства Linux, а многие организации стремятся оптимизировать расходы на лицензирование Windows Server. Давайте разберем, насколько жизнеспособна такая связка, какие существуют ограничения и как правильно выстроить архитектуру системы.

Анализируем официальные ограничения платформы 1С

Первым делом проанализируем текущее состояние технологической платформы 1С:Предприятие. Несмотря на то, что сама СУБД MS SQL Server прекрасно работает на дистрибутивах Linux (например, Ubuntu, RHEL или Astra Linux), сервер приложений 1С имеет жесткое архитектурное ограничение. На сегодняшний день (вплоть до актуальных релизов платформы 8.3.25) реализована следующая логика:

  1. Сервер приложений 1С на Windows может работать с любой поддерживаемой СУБД (MS SQL, PostgreSQL, IBM DB2, Oracle).
  2. Сервер приложений 1С на Linux может работать только с PostgreSQL (включая Postgres Pro), IBM DB2 и Oracle.

Выясним причину такого положения дел. Проблема кроется в программном провайдере взаимодействия. В дистрибутиве 1С для Linux отсутствует компонент dbms, отвечающий за трансляцию команд к MS SQL Server. Исторически 1С на Windows использует для связи технологии OLE DB и Native Client. На Linux эти технологии не являются нативными, и для реализации прямого подключения вендору потребовалось бы полностью переписать слой взаимодействия с СУБД под драйверы Microsoft ODBC для Linux. На текущий момент компания 1С не заявляла о планах реализации такого функционала, отдавая приоритет развитию поддержки PostgreSQL.

Поддержка MS SQL Server 2022 в современных реалиях

Рассмотрим ситуацию с версией MS SQL Server 2022. Многие пользователи ошибочно полагают, что она вовсе не поддерживается 1С. На самом деле поддержка была добавлена, но она требует определенных релизов платформы. Проанализируем список необходимых версий:

Важный нюанс: эта поддержка актуальна только в том случае, если сервер приложений 1С установлен на ОС Windows. СУБД при этом может физически находиться на сервере под управлением Linux.

Разбираем рабочую гибридную схему

Если в вашей инфраструктуре принципиально использование MS SQL Server на Linux (например, для экономии на лицензиях Windows для сервера БД), мы можем применить гибридную схему. Рассмотрим ее по шагам:

  1. Устанавливаем MS SQL Server 2022 на выбранный дистрибутив Linux. Настройка СУБД в этом случае практически не отличается от Windows-версии, за исключением путей к файлам и специфики прав доступа в ОС.
  2. Сервер приложений 1С:Предприятие устанавливаем на Windows Server.
  3. На Windows-сервере, где работает 1С, устанавливаем актуальный драйвер Microsoft OLE DB Driver for SQL Server (MSOLEDBSQL). Использование старого SQL Server Native Client более не рекомендуется.
  4. В консоли администрирования 1С создаем информационную базу, указывая IP-адрес или имя вашего Linux-сервера с MS SQL.

Такая конфигурация работает стабильно. Тесты производительности показывают, что разница в скорости работы MS SQL на Linux и Windows составляет не более 1–3%, что в реальных задачах 1С практически незаметно.

Лицензирование и вопросы активации

Проанализируем ситуацию с покупкой и активацией лицензий MS SQL в текущих условиях. Как отмечают специалисты, основная сложность заключается в активации «коробочных» продуктов. Однако при использовании корпоративных лицензий (Volume Licensing) процесс значительно упрощается. Такие ключи не требуют обязательной онлайн-активации при каждой установке, что критически важно для изолированных контуров или при ограничениях доступа к серверам Microsoft.

Также стоит учитывать стоимость. Если ваша цель — полная миграция на Linux для отказа от лицензий Microsoft, то связка 1С + MS SQL вам не подойдет, так как придется оставить хотя бы одну лицензию Windows Server для сервера приложений. В этом случае правильным шагом будет переход на Postgres Pro.

Сравнение с альтернативой: Postgres Pro для 1С

Посмотрим на ситуацию со стороны импортозамещения. Для тех, кто выбирает Linux в качестве основной платформы, единственным полноценным решением остается Postgres Pro. Разберем основные моменты:

Итоги и рекомендации

Подведем итоги нашего исследования. Напрямую запустить 1С (Linux) + MS SQL (Linux) невозможно из-за ограничений программного кода платформы 1С.

Если вам необходимо использовать именно MS SQL 2022: используйте гибридную схему (1С на Windows, СУБД на Linux). Это позволит вам легально использовать SQL-сервер в современной среде и при этом сохранить работоспособность всех механизмов 1С.

Если ваша задача — полный уход от технологий Microsoft: единственным верным путем будет миграция и сервера приложений, и СУБД на Linux с использованием Postgres Pro. Это потребует переобучения администраторов и, возможно, некоторой доработки кода конфигураций в части оптимизации запросов, но обеспечит полную технологическую независимость.

← На главную