Администрирование · 10 мин
Как привязать 1С к SQL Server: пошаговая инструкция
Как привязать 1С к SQL Server: установка СУБД, создание базы через консоль кластера, настройка прав, проверка подключения и типичные ошибки.
Файловый режим работы 1С подходит для небольших баз и одного-двух пользователей, но при росте объёма данных и числа сотрудников он становится узким местом: растёт время проведения документов, возникают блокировки и повреждения файлов. Переход на клиент-серверный вариант с SQL Server решает эти проблемы, но требует правильной последовательности установки и настройки.
Ключевой момент, который часто упускают: 1С не подключается к SQL напрямую. Между платформой и СУБД всегда стоит сервер 1С:Предприятия, который транслирует запросы платформы в SQL-запросы. Поэтому «привязка» — это настройка связки из трёх компонентов: SQL Server, сервер 1С и информационная база в кластере.
Ниже разобран полный цикл: от подготовки SQL Server до проверки работоспособности базы, а также типичные ошибки, из-за которых подключение не устанавливается.
Что понадобится перед началом работы
Для развёртывания клиент-серверной связки потребуются три программных компонента и учётные записи с достаточными правами. Проверьте их наличие до начала установки, чтобы не прерываться на середине.
- Дистрибутив Microsoft SQL Server подходящей редакции (Express — только для небольших баз, Standard или Enterprise — для рабочих систем).
- Дистрибутив платформы 1С:Предприятия той же разрядности, что и планируемая архитектура сервера (рекомендуется 64-бит).
- Учётная запись Windows с правами администратора на сервере, куда ставится SQL Server и сервер 1С.
- Учётная запись в SQL Server с правами на создание баз данных (роль sysadmin или dbcreator).
- Файл выгрузки конфигурации (.dt) или пустая конфигурация для загрузки.
Обратите внимание на ограничения SQL Server Express: ограничение на размер базы и объём используемой памяти. Для базы, которая активно растёт, этой редакции быстро станет мало, и миграцию придётся делать под нагрузкой. Если сомневаетесь — сразу ставьте Standard или используйте Developer-редакцию для тестового контура.
Шаг 1. Установка и подготовка SQL Server
Установите SQL Server со стандартными параметрами, но обратите внимание на несколько критичных для 1С настроек. Во-первых, режим проверки подлинности: для 1С удобнее смешанный режим (SQL Server и Windows), так как сервер 1С может подключаться под отдельной SQL-учётной записью. Во-вторых, сортировка (collation) — для русскоязычных баз традиционно используется Cyrillic_General_CI_AS.
После установки создайте отдельную учётную запись, под которой сервер 1С будет обращаться к СУБД. Не используйте sa для постоянной работы — это учётная запись с максимальными правами, и её компрометация открывает доступ ко всему серверу. Достаточно выделенного логина с правом создавать базы данных.
Проверьте, что служба SQL Server Browser запущена и TCP/IP-протокол включён в конфигурации сети SQL Server. Если сервер 1С и SQL Server стоят на разных машинах, убедитесь, что порт SQL Server (по умолчанию 1433) открыт в брандмауэре.
Шаг 2. Установка сервера 1С:Предприятия
Запустите установщик платформы и выберите компонент «Сервер 1С:Предприятия». Вместе с ним установите «Администрирование сервера 1С:Предприятия» — консоль управления кластером, без которой создать базу не получится. Если планируется работа через веб-клиент или публикация на веб-сервере, добавьте соответствующие модули расширения.
При установке мастер предложит создать пользователя, под которым будет работать служба агента сервера (по умолчанию USR1CV8). Оставьте предложенный вариант — службе нужны права на запись в каталог служебных файлов кластера, и установщик настроит их автоматически.
После установки проверьте, что служба «Агент сервера 1С:Предприятия» запущена. Если служба не стартует, чаще всего причина в правах учётной записи или конфликте портов — агент по умолчанию использует диапазон портов, начинающийся с 1540.
Шаг 3. Создание информационной базы в кластере
Откройте консоль «Администрирование серверов 1С:Предприятия», разверните узел локального кластера и в разделе «Информационные базы» создайте новую базу. Именно здесь происходит собственно «привязка» 1С к SQL: в параметрах базы указывается, к какой СУБД и к какому экземпляру она относится.
- 1Откройте консоль администрирования серверов 1С и разверните кластер
- 2В разделе «Информационные базы» выберите «Создать» — «Информационная база»
- 3Укажите имя базы (латиницей, без пробелов — так будет называться и база в SQL)
- 4Выберите тип СУБД — MS SQL Server
- 5В поле «Сервер баз данных» укажите имя или IP-адрес сервера SQL
- 6Введите имя базы данных и учётные данные пользователя SQL
- 7Оставьте флаг «Создать базу данных в случае её отсутствия» и подтвердите
- 8Дождитесь появления базы в списке без ошибок
Если флаг создания базы снят, а база с указанным именем ещё не существует в SQL Server, кластер выдаст ошибку подключения. Для новой базы флаг должен стоять; для подключения уже существующей базы (например, восстановленной из бэкапа) — снят, при этом имя должно точно совпадать.
После создания запустите конфигуратор 1С, добавьте базу в список как серверную (указав имя сервера 1С и имя базы в кластере) и загрузите конфигурацию из файла .dt через «Загрузить информационную базу». Либо создайте пустую конфигурацию и наполните её через объединение с cf-файлом.
Проверка подключения и работоспособности
Первый признак успешной привязки — база открывается в конфигураторе и в режиме «Предприятие» без ошибок соединения. Дополнительно проверьте со стороны SQL Server: в SQL Server Management Studio должна появиться база с заданным именем, а в ней — таблицы, созданные платформой (Config, Params и другие служебные).
Как проверить результат
Присутствует, без значков ошибок
База не создаётся, ошибка соединения с СУБД
База существует, есть служебные таблицы платформы
Базы нет или она пустая
Открывается окно входа, список пользователей
Ошибка соединения с сервером 1С или СУБД
Статус «Работает» в диспетчере служб
Служба остановлена или перезапускается
Полезно сразу провести простую нагрузочную проверку: создать и провести несколько документов, сформировать отчёт. Если операции выполняются без таймаутов и ошибок блокировок — связка работает корректно.
Типичные ошибки при подключении
Отдельно стоит ситуация, когда база создана, но периодически «отваливается» с ошибками соединения. Чаще всего причина не в 1С, а в инфраструктуре: нестабильная сеть между серверами, перезапуск службы SQL Server по расписанию обслуживания, нехватка памяти, из-за которой СУБД сбрасывает соединения. Диагностику начинайте с журналов: журнала регистрации 1С, логов SQL Server и системного журнала Windows.
Ограничения и альтернативные варианты
Связка 1С + SQL Server — не единственный клиент-серверный вариант. Платформа также поддерживает PostgreSQL (в том числе бесплатные сборки), Oracle Database и IBM DB2. Выбор зависит от лицензионного бюджета, квалификации администраторов и требований к нагрузке.
Сравнение вариантов СУБД для 1С
Самый распространённый вариант для 1С, хорошая поддержка и документация. Ограничение — стоимость лицензий Standard/Enterprise
Бесплатная СУБД со специальными сборками под 1С. Требует более тонкой настройки и опыта администрирования
Подходит для 1–5 пользователей и небольших баз. Не требует СУБД, но ограничен по нагрузке и надёжности
Помните и об ограничении в обратную сторону: напрямую читать и тем более изменять данные в таблицах SQL средствами T-SQL не рекомендуется. Структура таблиц принадлежит платформе и может меняться при обновлениях; прямая запись в таблицы почти гарантированно приводит к рассогласованию данных. Для интеграций используйте штатные механизмы: COM-соединение, OData, HTTP-сервисы или планы обмена.
Что важно запомнить
Привязка 1С к SQL выполняется через сервер 1С:Предприятия — база создаётся в консоли кластера с указанием сервера БД и учётных данных SQL. Успех определяется тремя проверками: база видна в кластере, существует в SQL Server и открывается в режиме «Предприятие». Все работы — только после резервного копирования.
Частые вопросы
Можно ли подключить 1С к SQL Server без сервера 1С:Предприятия?
Нет. Клиент-серверный режим устроен так, что все обращения к СУБД идут только через сервер 1С. Прямого подключения клиента к SQL платформа не поддерживает — это архитектурное ограничение.
Можно ли перенести файловую базу на SQL без потери данных?
Да. Сделайте выгрузку файловой базы в файл .dt через конфигуратор, создайте пустую серверную базу в кластере и загрузите в неё этот файл. Данные, пользователи и настройки сохранятся. Перед операцией убедитесь, что все пользователи вышли из файловой базы.
Какая редакция SQL Server нужна для небольшой компании?
Для базы небольшого объёма и нескольких пользователей может хватить бесплатной Express-редакции, но у неё есть ограничения по размеру базы и памяти. Если база активно растёт, разумнее сразу планировать Standard, чтобы не мигрировать под нагрузкой.
Почему кластер выдаёт ошибку «Ошибка соединения с сервером баз данных»?
Чаще всего причины такие: неверно указано имя сервера SQL, отключён протокол TCP/IP в конфигурации СУБД, закрыт порт в брандмауэре или у учётной записи нет прав. Проверяйте в этом порядке: доступность сервера по сети, настройки протоколов, права логина.
Безопасно ли напрямую выполнять запросы к базе 1С в SQL Server?
Чтение данных для отчётности — допустимо с осторожностью, но структура таблиц может меняться при обновлениях платформы. Прямая запись или изменение данных в таблицах недопустимы: это нарушает внутренние связи платформы и приводит к повреждению базы. Для обмена данными используйте штатные механизмы 1С.
Нужно ли настраивать регламентные задания обслуживания в SQL Server?
Да. Для стабильной работы рекомендуется настроить регулярное обновление статистики, обслуживание индексов и резервное копирование средствами SQL Server. Без этого со временем деградирует производительность, а при сбое восстановить данные будет нечем.