Администрирование · 10 мин
СУБД для 1С: что это и как выбрать подходящую
Что такое СУБД для 1С, чем файловый режим отличается от клиент-серверного, сравнение MS SQL, PostgreSQL и Oracle, критерии выбора и типичные ошибки.
СУБД — это система управления базами данных, программный слой, который хранит информацию базы 1С и обрабатывает запросы к ней. Когда бухгалтер проводит документ, а менеджер формирует отчёт, именно СУБД записывает данные на диск, контролирует целостность, разграничивает доступ одновременно работающих пользователей и возвращает результаты выборок. Без понимания того, какая СУБД обслуживает вашу базу, невозможно грамотно спланировать производительность, резервное копирование и масштабирование.
Платформа 1С:Предприятие поддерживает два принципиально разных режима работы: файловый, где роль хранилища выполняет специальный файл базы данных, и клиент-серверный, где данными управляет полноценная внешняя СУБД — Microsoft SQL Server, PostgreSQL, Oracle Database или IBM Db2. Выбор режима и конкретной СУБД определяет предельное число пользователей, скорость тяжёлых операций и требования к администрированию.
Материал ниже объясняет, как устроена связка «1С + СУБД», чем отличаются поддерживаемые системы, по каким признакам понять, что файловый режим исчерпал себя, и как безопасно перейти на клиент-серверный вариант.
Как 1С взаимодействует с базой данных
Прикладное решение (конфигурация) никогда не работает с данными напрямую. Вся логика — документы, справочники, регистры — описана в метаданных, а платформа 1С транслирует обращения к объектам в операции с конкретным хранилищем. В файловом режиме платформа сама читает и пишет файл базы; в клиент-серверном формирует SQL-запросы и передаёт их серверной СУБД через сервер 1С:Предприятия.
Такое разделение означает, что структура таблиц на уровне СУБД служебная: имена полей и таблиц генерируются платформой и не предназначены для прямого редактирования. Изменять данные штатно нужно только через платформу — интерактивно, через обработки или встроенный язык. Прямая запись в таблицы средствами SQL обходит механизмы контроля целостности и почти гарантированно приводит к повреждению базы.
Файловый режим: встроенная СУБД платформы
В файловом варианте вся база — справочники, документы, регистры, настройки — хранится в одном файле с расширением 1Cv8.1CD (плюс служебные файлы). Отдельная СУБД не требуется: платформа сама выполняет роль движка базы данных. Это делает развёртывание предельно простым: достаточно скопировать файл и указать к нему путь в списке баз.
У файлового режима есть жёсткие архитектурные ограничения. Одновременная запись возможна только с блокировками на уровне таблиц целиком, поэтому при росте числа пользователей резко растут ожидания на блокировках. Есть и ограничения на размеры отдельных таблиц. Практический ориентир: комфортная работа небольшой группы, обычно до 5–10 активных пользователей, при умеренных объёмах данных.
Дополнительный риск — чувствительность к сбоям. Обрыв сети при работе по сетевому ресурсу, отключение питания или «зависание» клиента в момент записи могут повредить файл базы. Поэтому файловые базы нельзя размещать на ненадёжных сетевых дисках, а резервное копирование должно быть ежедневным и проверяемым.
Клиент-серверный режим и поддерживаемые СУБД
В клиент-серверном варианте появляется трёхзвенная архитектура: клиентское приложение — кластер серверов 1С:Предприятия — сервер СУБД. Сервер 1С принимает запросы клиентов, выполняет серверный код конфигурации и обращается к СУБД. Такая схема снимает ограничения файлового режима: блокировки управляются на уровне записей, доступны полноценные транзакции, регламентные задания выполняются централизованно.
Платформа официально поддерживает несколько СУБД. Набор поддерживаемых версий зависит от версии платформы, поэтому перед установкой нужно сверяться с системными требованиями конкретного релиза 1С:Предприятия.
| СУБД | Лицензирование | Типичный сценарий | Особенности |
|---|---|---|---|
| Microsoft SQL Server | Коммерческая, есть бесплатная Express с ограничениями | Инфраструктура на Windows, средние и крупные базы | Зрелые средства администрирования, тесная интеграция с Windows |
| PostgreSQL | Свободная; есть сборки, адаптированные под 1С | Ограниченный бюджет, Linux-инфраструктура | Требует специальных сборок/патчей для корректной работы с 1С |
| Oracle Database | Коммерческая, высокая стоимость | Крупные предприятия с существующей Oracle-инфраструктурой | Требовательна к квалификации администраторов |
| IBM Db2 | Коммерческая | Организации со сложившимся парком решений IBM | Встречается реже остальных вариантов |
Сравнение вариантов
Подходит для 1–10 пользователей и небольших объёмов. Не требует отдельного сервера СУБД, но ограничен по блокировкам и уязвим к сбоям.
Подходит для Windows-инфраструктуры и десятков пользователей. Ограничение — стоимость лицензий при большом числе ядер или пользователей.
Подходит при ограниченном бюджете и готовности администрировать Linux. Ограничение — нужна адаптированная сборка и опыт её сопровождения.
Как понять, что пора переходить на клиент-серверную СУБД
Переход оправдан не «на вырост», а при появлении конкретных симптомов. Главный из них — регулярные ошибки конфликта блокировок при обычной работе: пользователи не могут одновременно провести документы по одному складу или контрагенту. Второй признак — неприемлемое время выполнения массовых операций: закрытие месяца, перепроведение, формирование крупных отчётов занимает часы.
Также сигналами служат приближение к ограничениям файлового формата по размеру таблиц, рост числа одновременно работающих сверх десятка, потребность в регламентных заданиях по расписанию без участия пользователя и требования к централизованному резервному копированию средствами СУБД.
Считайте, сколько раз в неделю пользователи видят ошибки блокировки и при каких операциях
Посчитайте реально одновременно работающих в часы пик, а не общее число учётных записей
Замерьте длительность закрытия месяца и типовых отчётов
Проверьте размер файла 1Cv8.1CD и динамику роста за несколько месяцев
Как перейти с файловой базы на серверную СУБД
Миграция выполняется штатным механизмом выгрузки и загрузки через файл .dt. Технологически процесс прост, но требует подготовки инфраструктуры и тестирования: конфигурация может вести себя иначе в клиент-серверном режиме, особенно если в ней есть доработки.
- 1Установите и настройте серверную СУБД и сервер 1С:Предприятия, проверьте соответствие версий системным требованиям платформы
- 2Сделайте полную выгрузку файловой базы в файл .dt через конфигуратор и дополнительно скопируйте сам файл базы как страховку
- 3Создайте пустую базу в кластере серверов 1С с указанием СУБД и загрузите в неё файл .dt
- 4Проверьте работу ключевых сценариев: проведение документов, отчёты, обмены, печатные формы
- 5Переведите пользователей на новую базу, сохранив старую в режиме только чтение как резерв
После загрузки обязательно выполните тестирование и исправление базы и проверьте плановое обслуживание СУБД: резервное копирование средствами самой СУБД, обслуживание индексов и статистики. Без регламентного обслуживания серверная база со временем деградирует по производительности так же, как и файловая.
Как проверить результат
Пользователи входят в клиент-серверную базу, данные на месте
Ошибки подключения к кластеру или СУБД, отсутствуют данные
Несколько пользователей одновременно проводят документы без конфликтов
Остались частые ошибки блокировок при обычных операциях
Копия средствами СУБД создаётся и тестово восстанавливается
Копия не создаётся или восстановление не проверялось
Типичные ошибки при выборе и эксплуатации СУБД
Самая дорогая ошибка — прямое вмешательство в данные на уровне СУБД. Даже «безобидный» UPDATE одного поля обходит механизмы платформы и может нарушить согласованность регистров и документов. Вторая распространённая проблема — отсутствие регламентного обслуживания: без обновления статистики и перестройки индексов запросы постепенно замедляются, и винят при этом «1С», а не обслуживание СУБД.
FAQ: частые вопросы о СУБД для 1С
Можно ли работать в 1С вообще без отдельной СУБД?
Да, файловый режим не требует никакой внешней СУБД — платформа сама хранит данные в файле 1Cv8.1CD. Это полноценный вариант для небольших групп, но с ограничениями по параллельной работе и объёмам.
Какая СУБД лучше для 1С — MS SQL или PostgreSQL?
Универсального ответа нет. MS SQL Server удобнее в администрировании в Windows-среде и имеет развитые штатные инструменты, но требует лицензионных затрат. PostgreSQL бесплатен, но для работы с 1С нужны адаптированные сборки и более высокая квалификация администратора. Выбирайте исходя из бюджета, имеющейся инфраструктуры и компетенций специалистов.
Преобразуется ли файловая база в серверную автоматически?
Нет, прямого преобразования файла нет. Переход выполняется через выгрузку базы в файл .dt в конфигураторе и последующую загрузку в новую базу, созданную в кластере серверов 1С с указанием СУБД.
Можно ли делать резервную копию простым копированием файлов базы СУБД?
Копирование файлов работающей СУБД не гарантирует целостную копию. Используйте штатные механизмы самой СУБД (backup-средства) или выгрузку в .dt из конфигуратора. Любую копию нужно периодически проверять тестовым восстановлением — копия, которая не восстанавливается, не является резервной.
Почему серверная база 1С со временем начинает тормозить?
Чаще всего из-за отсутствия регламентного обслуживания СУБД: устаревшая статистика, фрагментированные индексы, разросшийся журнал транзакций. Реже причина в неоптимальных запросах доработанной конфигурации или недостатке ресурсов сервера. Начинайте диагностику с плана обслуживания СУБД и мониторинга длительных запросов.
Что важно запомнить
СУБД в 1С — это либо встроенное файловое хранилище, либо внешняя серверная система (MS SQL Server, PostgreSQL, Oracle, IBM Db2). Файловый режим подходит небольшим группам, клиент-серверный нужен при росте пользователей, блокировок и объёмов. Переход выполняется через выгрузку/загрузку .dt, а данные в любой СУБД изменяются только средствами платформы. Резервное копирование и регламентное обслуживание обязательны в обоих режимах.