К статье
Практический материал

Администрирование · 12 мин

SQL-версия 1С: что это такое и когда она нужна

Что такое SQL-версия 1С, чем она отличается от файловой базы, какие СУБД поддерживаются, когда нужен клиент-серверный режим и как перенести базу без потери данных.

Под «SQL-версией 1С» обычно понимают клиент-серверный вариант работы платформы «1С:Предприятие», при котором данные информационной базы хранятся не в файле на диске, а в базе данных под управлением СУБД — Microsoft SQL Server, PostgreSQL, IBM Db2 или Oracle Database. Сама конфигурация (прикладное решение) при этом остаётся той же: меняется способ хранения и обработки данных.

Термин «SQL-версия» — разговорный. В официальной документации используется выражение «клиент-серверный режим работы». Название закрепилось потому, что платформа 1С обращается к серверу баз данных с запросами на языке SQL, а администратору приходится взаимодействовать с СУБД напрямую: создавать базу, настраивать права, делать резервные копии.

Выбор между файловым и SQL-вариантом — это вопрос нагрузки, количества пользователей и требований к надёжности. Ниже разберём, как устроен клиент-серверный режим, чем он отличается от файлового, какие СУБД поддерживаются и как безопасно перенести базу.

Что такое SQL-версия 1С простыми словами

В файловом варианте вся база — это один файл 1Cv8.1CD в общей папке, к которому пользователи обращаются напрямую. В SQL-версии появляются три уровня: клиентское приложение, сервер «1С:Предприятия» и сервер СУБД. Клиент отправляет запрос серверу 1С, тот формирует SQL-запросы к базе данных и возвращает результат пользователю.

Важно понимать: «SQL-версия» — это не отдельный продукт и не другая конфигурация. Одна и та же база «1С:Бухгалтерии» или «1С:Управление торговлей» может работать и в файловом, и в клиент-серверном режиме. Переход между ними выполняется через выгрузку и загрузку данных без изменения прикладного решения.

Чем SQL-версия отличается от файловой

Ключевая разница — в механизме блокировок и обработке параллельной работы. Файловый режим блокирует таблицы целиком при записи, поэтому при одновременной работе многих пользователей возникают конфликты и ошибки «Конфликт блокировок». Клиент-серверный режим использует управляемые блокировки на уровне записей, что позволяет десяткам и сотням пользователей работать одновременно.

ПараметрФайловый режимSQL (клиент-серверный)
Хранение данныхФайл 1Cv8.1CD в общей папкеБаза данных в СУБД
Число пользователейОриентировочно до 5–10 при активной работеДесятки и сотни одновременно
БлокировкиНа уровне таблицНа уровне записей (управляемые)
Резервное копированиеКопирование файла или выгрузка dtСредства СУБД, регламентные задания, восстановление на момент времени
Требования к инфраструктуреОбщая папка или веб-серверСервер 1С + сервер СУБД, лицензии
АдминистрированиеМинимальноеТребует навыков администрирования СУБД

Ещё одно отличие — безопасность. В файловом режиме любой пользователь с доступом к общей папке может скопировать или удалить файл базы. В SQL-варианте пользователи вообще не имеют прямого доступа к файлам данных: подключение идёт через сервер 1С, а права разграничиваются на уровне СУБД.

Какие СУБД поддерживает платформа 1С

Платформа «1С:Предприятие» официально работает с несколькими СУБД. Выбор зависит от бюджета, компетенций администраторов и требований к производительности.

  • Microsoft SQL Server — самый распространённый вариант в корпоративной среде. Платная лицензия, зрелые средства администрирования, удобная интеграция с Windows-инфраструктурой.
  • PostgreSQL — свободная СУБД; 1С поддерживает как стандартный PostgreSQL, так и специально адаптированные сборки. Популярный способ снизить стоимость лицензий.
  • IBM Db2 — используется в крупных организациях с существующей инфраструктурой IBM.
  • Oracle Database — вариант для крупных предприятий с высокими требованиями к масштабированию и отказоустойчивости.

Для каждой СУБД платформа поставляется с собственным набором компонентов доступа. При установке сервера 1С нужно выбрать соответствующие модули, а на сервере СУБД — корректно настроить учётную запись, от имени которой сервер 1С будет обращаться к базе.

Сравнение популярных СУБД для 1С

Microsoft SQL Server

Подходит, если в компании уже есть Windows-инфраструктура и администратор с опытом MS SQL. Ограничение — стоимость лицензий на сервер и подключения.

PostgreSQL

Подходит при ограниченном бюджете и готовности администрировать Linux/Windows-развёртывание PostgreSQL. Ограничение — меньше готовых инструментов мониторинга из коробки, нужна аккуратная настройка параметров.

Oracle / Db2

Оправданы в крупных организациях, где эти СУБД уже используются. Для типовой средней компании избыточны по стоимости и сложности.

Когда стоит переходить на SQL-версию

Однозначного порога в лицензионной политике нет, но на практике есть понятные признаки того, что файловый режим стал узким местом. Ориентируйтесь на реальные симптомы, а не на формальные цифры.

  • Пользователи регулярно получают ошибки конфликта блокировок при одновременном проведении документов.
  • База заметно «тормозит» при одновременной работе нескольких человек, особенно при формировании отчётов.
  • Файл базы вырос настолько, что регламентные операции (тестирование, выгрузка) занимают часы.
  • Требуется регламентное резервное копирование без остановки работы пользователей.
  • Нужно разграничить доступ к данным так, чтобы пользователи не имели прямого доступа к файлам.
Маршрут решения

Как выбрать действие

Работают 1–5 пользователей, база небольшая, конфликтов блокировок нетОставайтесь на файловом режиме — он проще и дешевле в обслуживании
Пользователей больше десятка или регулярны конфликты блокировокПланируйте переход на клиент-серверный режим с MS SQL Server или PostgreSQL
Нужен баланс стоимости и надёжностиРассмотрите PostgreSQL с грамотной настройкой — это существенно снижает затраты на лицензии
База критична и простой недопустимКлиент-серверный режим плюс резервное копирование средствами СУБД и, при необходимости, кластер серверов 1С

Обратная ситуация тоже встречается: небольшая компания покупает сервер и лицензии «про запас», хотя файлового режима хватило бы с избытком. SQL-инфраструктура требует постоянного администрирования — обновлений СУБД, контроля места на дисках, обслуживания индексов. Если этих компетенций нет, простая файловая база с регулярным копированием надёжнее.

Как перенести базу из файлового режима в SQL

Перенос выполняется штатными средствами платформы и не требует изменения конфигурации. Общий порядок такой: выгрузка базы в файл .dt, создание пустой базы на сервере и загрузка данных в неё.

Порядок переноса базы в SQL-режим
  1. 1
    Завершите работу всех пользователей и сделайте резервную копию файловой базы (копия папки или выгрузка dt)
  2. 2
    Откройте базу в конфигураторе и выполните «Администрирование → Выгрузить информационную базу» в файл .dt
  3. 3
    Установите и настройте СУБД и сервер «1С:Предприятия», создайте учётную запись с правами на создание базы
  4. 4
    В консоли кластера серверов 1С или через диалог добавления базы создайте новую пустую информационную базу на сервере
  5. 5
    Откройте новую базу в конфигураторе и выполните «Загрузить информационную базу» из файла .dt
  6. 6
    Проверьте работоспособность: вход пользователей, проведение документов, формирование отчётов, обмены данными
  7. 7
    Настройте регламентное резервное копирование средствами СУБД

На больших базах выгрузка и загрузка могут занимать значительное время — планируйте перенос на нерабочие часы. После загрузки обязательно проверьте, что все пользователи подключаются именно к серверной базе: старый ярлык на файловую базу нужно убрать, чтобы никто не продолжил работать в устаревшей копии.

Настройка и обслуживание SQL-базы: на что обратить внимание

После перехода администрирование не заканчивается, а начинается. СУБД требует регулярного обслуживания, иначе производительность со временем деградирует.

Минимальный набор регламентных операций: резервное копирование по расписанию, обновление статистики и перестроение индексов, контроль размера журнала транзакций (для MS SQL — выбор подходящей модели восстановления), мониторинг свободного места на дисках. Для PostgreSQL важны корректные настройки памяти и автоматической очистки (autovacuum).

Типичные ошибки при работе с SQL-версией 1С
01
Резервное копирование только средствами 1С (выгрузка dt) без бэкапов СУБД — dt не позволяет восстановить базу на произвольный момент времени и долго создаётся на больших базах
02
Полная модель восстановления в MS SQL без регулярного бэкапа журнала транзакций — журнал разрастается и заполняет диск, база останавливается
03
Работа пользователей под учётной записью с избыточными правами в СУБД — риск случайного повреждения данных вне механизмов 1С
04
Прямые изменения данных в таблицах СУБД в обход платформы — почти гарантированное нарушение целостности базы
05
Отсутствие обслуживания индексов и статистики — постепенное замедление отчётов и проведения документов
Контрольные точки

Как проверить, что SQL-база работает нормально

Резервные копии
Норма

Бэкапы создаются по расписанию, тестовое восстановление проходит успешно

Тревожный признак

Копий нет, они старше нескольких дней или восстановление ни разу не проверялось

Место на дисках СУБД
Норма

Запас свободного места есть, рост файлов данных и журнала контролируется

Тревожный признак

Диск заполнен более чем на 85–90%, журнал транзакций растёт без ограничений

Скорость работы пользователей
Норма

Документы проводятся и отчёты формируются без длительных ожиданий

Тревожный признак

Регулярные зависания, ошибки превышения времени ожидания блокировок

Журналы сервера 1С и СУБД
Норма

Ошибок нет или они разовые и объяснимые

Тревожный признак

Повторяющиеся ошибки соединения, взаимоблокировки, нехватка памяти

Ограничения и частые заблуждения

Первое заблуждение: «SQL-версия всегда быстрее». На маленькой базе с двумя пользователями разницы не будет, а при слабом сервере или неграмотной настройке СУБД клиент-серверный режим может работать даже медленнее файлового. Прирост даёт не сам факт SQL, а управляемые блокировки, серверное исполнение кода и нормальное железо.

Второе заблуждение: «раз база в SQL, можно править данные напрямую запросами». Это строго запрещено: структура таблиц 1С служебная, и прямые изменения нарушают целостность, а также лишают поддержки. Все изменения — только через платформу.

Третий момент — лицензии. Для клиент-серверного режима, помимо клиентских лицензий, требуется лицензия на сервер «1С:Предприятия», а для MS SQL Server или Oracle — ещё и лицензии на саму СУБД. Это существенная статья расходов, которую нужно учитывать при выборе.

Перед покупкой серверных лицензий полезно провести пробный перенос копии базы на тестовый сервер и прогнать типовые операции: проведение документов, закрытие месяца, тяжёлые отчёты. Это покажет реальную производительность и поможет подобрать конфигурацию сервера без лишних затрат.
ПЗ
Практическое замечание

Частые вопросы о SQL-версии 1С

SQL-версия — это отдельная конфигурация 1С?

Нет. Конфигурация одна и та же, меняется только режим хранения данных: файл 1Cv8.1CD либо база в СУБД. Переход между режимами выполняется выгрузкой и загрузкой через файл .dt без доработки прикладного решения.

Сколько пользователей выдерживает файловая база 1С?

Точного ограничения нет — всё зависит от интенсивности работы. На практике при 5–10 активно работающих пользователях начинаются конфликты блокировок и замедления. Если пользователей больше десятка, клиент-серверный режим обычно оправдан.

Какую СУБД выбрать для 1С: MS SQL или PostgreSQL?

Если в компании есть администратор с опытом MS SQL и бюджет на лицензии — удобнее Microsoft SQL Server. Если важно снизить стоимость и есть готовность к настройке — PostgreSQL. По функциональности для типовых задач 1С оба варианта рабочие.

Можно ли вернуться с SQL-версии обратно на файловую?

Да, тем же способом: выгрузить базу из серверной в файл .dt через конфигуратор и загрузить её в новую файловую базу. Конфигурация и данные сохраняются полностью.

Нужно ли делать бэкапы, если база в SQL?

Обязательно. Причём использовать стоит штатные средства СУБД с расписанием и периодической проверкой восстановления. Выгрузка .dt — дополнительная мера, но не замена полноценного резервного копирования.

Можно ли редактировать данные напрямую в таблицах SQL?

Нет. Структура таблиц служебная, прямые изменения нарушают целостность базы и лишают права на поддержку. Любые корректировки данных выполняются только через платформу 1С или обработки, работающие через её механизмы.

Итог

Что важно запомнить

SQL-версия 1С — это клиент-серверный режим с хранением данных в СУБД. Он нужен при большом числе пользователей и высоких требованиях к надёжности, но требует лицензий, серверной инфраструктуры и регулярного администрирования. Переход выполняется через выгрузку/загрузку .dt и всегда начинается с резервной копии.