Администрирование · 12 мин
Какая база данных используется в 1С
Разбираем, какая СУБД работает с 1С: файловый режим, MS SQL Server, PostgreSQL, Oracle и IBM DB2. Сравнение, требования, выбор под задачу и нагрузку.
1С:Предприятие — это не самостоятельная база данных, а платформа, которая хранит данные либо в собственном файловом формате, либо во внешней СУБД. Платформа поддерживает четыре серверные СУБД: Microsoft SQL Server, PostgreSQL (включая Postgres Pro), Oracle Database и IBM DB2, а также файловый режим работы без отдельного сервера баз данных.
Выбор конкретного варианта зависит от количества пользователей, объёма данных, требований к отказоустойчивости и бюджета. Небольшая фирма с двумя-тремя бухгалтерами спокойно работает в файловом режиме, а компания с сотнями одновременных пользователей нуждается в клиент-серверной архитектуре с полноценной СУБД.
Важно понимать: сама платформа 1С не хранит данные в таблицах, которые можно напрямую редактировать. Структура базы генерируется платформой автоматически, и вмешательство в неё средствами СУБД нарушает лицензионные условия и почти гарантированно приводит к повреждению данных.
Как устроено хранение данных в 1С
Платформа 1С:Предприятие абстрагирует прикладные решения от конкретного способа хранения. Конфигурация (1С:Бухгалтерия, 1С:Управление торговлей и другие) описывает объекты — справочники, документы, регистры, — а платформа сама решает, как отобразить их на физическую структуру хранения.
В файловом режиме вся информационная база размещается в одном файле с расширением 1Cv8.1CD. Это проприетарный формат, внутри которого находятся таблицы данных, конфигурация и служебная информация. Доступ к файлу осуществляется напрямую с рабочих станций или через веб-сервер.
В клиент-серверном режиме появляется трёхзвенная архитектура: клиентское приложение, сервер 1С:Предприятия и сервер СУБД. Сервер 1С транслирует запросы прикладного кода в SQL-запросы конкретной СУБД. Именно поэтому список поддерживаемых баз данных ограничен — для каждой СУБД платформа содержит отдельный слой адаптации.
Файловый режим: встроенная база данных
Файловый вариант — самый простой способ развёртывания. Никакой отдельной СУБД не требуется: достаточно установить платформу и создать информационную базу. Файл 1Cv8.1CD можно разместить на локальном диске или в общей сетевой папке.
Режим подходит для небольших коллективов. Практическое ограничение — примерно 5–10 одновременно работающих пользователей, после которого начинаются блокировки и заметное замедление. Также существуют ограничения платформы: в файловом режиме недоступны некоторые механизмы, например полноценное управление блокировками данных и часть сервисных функций.
Главные риски файлового режима — повреждение файла при сбое питания, обрыве сети или аварийном завершении сеанса. Файловая база не имеет журнала транзакций в том виде, в каком он есть у серверных СУБД, поэтому восстановление выполняется утилитой chdbfl или через тестирование и исправление, что не всегда спасает данные полностью.
Клиент-серверный режим и поддерживаемые СУБД
Платформа 1С:Предприятие 8.3 официально поддерживает четыре серверные СУБД. Каждая имеет свои сильные стороны, стоимость лицензирования и требования к администрированию.
| СУБД | Лицензия | Когда выбирают | Особенности |
|---|---|---|---|
| MS SQL Server | Платная (есть бесплатный Express с ограничениями) | Инфраструктура на Windows, есть администратор MS SQL | Наиболее распространённый вариант, много готовых инструкций |
| PostgreSQL / Postgres Pro | Открытая / коммерческая сборка | Экономия на лицензиях, Linux-инфраструктура | Рекомендуются специальные сборки с патчами для 1С |
| Oracle Database | Платная, дорогая | Крупные предприятия с существующим Oracle-парком | Требует квалифицированного DBA |
| IBM DB2 | Платная | Организации с инфраструктурой IBM | Встречается редко, в основном в крупном корпоративном сегменте |
Для работы сервера 1С с любой СУБД требуется установка клиентских библиотек соответствующей базы данных на сервере 1С:Предприятия. Без них кластер серверов не сможет подключиться к СУБД, и база не создастся.
MS SQL Server — стандарт де-факто
Большинство внедрений клиент-серверной 1С в России исторически выполнено на MS SQL Server. Причины практические: простая установка, развитые графические средства администрирования, большое количество специалистов и готовых регламентов обслуживания. Бесплатная редакция Express подходит только для небольших баз из-за ограничений на объём данных и использование ресурсов.
PostgreSQL — свободная альтернатива
PostgreSQL позволяет построить клиент-серверную инфраструктуру без затрат на лицензии СУБД. Для работы с 1С рекомендуется использовать сборки, адаптированные под платформу (например, от Postgres Professional), поскольку «ванильная» версия работает с 1С нестабильно. СУБД поддерживается и на Windows, и на Linux, что даёт гибкость при выборе операционной системы сервера.
Сравнение вариантов
До ~5–10 пользователей, минимальные затраты; ограничение — риск повреждения файла и блокировки при росте нагрузки
Средние и крупные внедрения на Windows; ограничение — стоимость лицензий при большом числе ядер
Экономия на лицензиях, Linux-окружение; ограничение — нужны специальные сборки и опыт администрирования
Корпоративный сектор с существующей инфраструктурой этих вендоров; ограничение — высокая стоимость владения
Как узнать, какая база данных используется у вас
Определить текущий режим работы можно прямо из интерфейса, без доступа к серверу. Есть несколько способов, которые дополняют друг друга.
- 1Откройте в 1С раздел «Администрирование» → «Обслуживание» → «Журнал регистрации» или сразу пункт «О программе»: там указан режим работы
- 2В стартовом окне выбора информационных баз выделите базу и посмотрите строку подключения внизу: для файловой базы указан путь к каталогу, для серверной — имя сервера 1С и имя базы в кластере
- 3Если база серверная, откройте консоль кластера серверов 1С — в свойствах информационной базы виден тип СУБД, сервер баз данных и имя базы
- 4Для точного ответа, какая именно СУБД (MS SQL или PostgreSQL), посмотрите поле «СУБД» в свойствах базы в консоли кластера
Строка подключения в списке баз — самый быстрый признак. Если там указан путь вида \\server\share\baza или C:\Bases\Trade, база файловая. Если указано что-то вроде Srvr="srv1c";Ref="trade", это клиент-серверный вариант.
На стороне сервера СУБД базу 1С легко узнать по имени, заданному при создании, и по характерному набору таблиц с префиксами вида _Document, _Reference, _AccumRg. Однако напрямую в этих таблицах ничего менять нельзя.
Как выбрать СУБД под свою задачу
Решение принимается по нескольким факторам: число одновременных пользователей, объём базы, требования к непрерывности работы и имеющаяся экспертиза в штате. Универсально правильного ответа нет, но есть рабочие ориентиры.
Как выбрать действие
Переход с файлового режима на клиент-серверный выполняется штатно: база выгружается в файл .dt через конфигуратор, затем загружается в новую серверную базу. Конфигурация при этом не меняется — одно и то же прикладное решение работает в обоих режимах.
Отдельно учитывайте лицензирование самой платформы: для клиент-серверного режима нужна лицензия на сервер 1С:Предприятия, а клиентские лицензии приобретаются независимо от выбранной СУБД.
Ограничения и типичные ошибки при работе с БД 1С
Главное ограничение, о котором нужно помнить всегда: прямой доступ к данным средствами СУБД запрещён лицензионным соглашением и технически опасен. Структура таблиц генерируется платформой и может меняться при обновлении конфигурации. Любые прямые INSERT, UPDATE или DELETE обходят механизмы контроля ссылочной целостности 1С.
Чтение данных напрямую из СУБД для отчётности технически возможно, но требует понимания внутренней структуры хранения и не гарантирует корректности интерпретации. Для интеграций правильнее использовать штатные механизмы: COM-соединение, OData, HTTP-сервисы, планы обмена.
Ещё одна распространённая проблема — неправильный выбор модели восстановления в MS SQL Server. Полная модель без регулярного бэкапа журнала транзакций приводит к разрастанию файла журнала до сотен гигабайт. Для баз 1С часто достаточно простой модели восстановления, если план резервного копирования это допускает.
Как проверить результат
В строке подключения и консоли кластера режим совпадает с запланированным
База работает файлово, хотя планировался серверный вариант
База создаётся и открывается в конфигураторе без ошибок
Ошибки подключения к СУБД, отсутствие клиентских библиотек
Типовые операции проводятся без многоминутных ожиданий
Постоянные блокировки, таймауты, жалобы пользователей
Копии создаются по расписанию и тестово восстанавливаются
Копии не проверялись восстановлением ни разу
FAQ
Можно ли использовать MySQL или SQLite для 1С?
Нет. Платформа 1С:Предприятие поддерживает только четыре СУБД: MS SQL Server, PostgreSQL, Oracle и IBM DB2, плюс собственный файловый формат. Подключить MySQL, SQLite или любую другую базу в качестве основного хранилища невозможно — сервер 1С просто не имеет соответствующего слоя адаптации.
Какая СУБД быстрее для 1С — MS SQL или PostgreSQL?
Однозначного ответа нет: производительность зависит от настроек сервера, дисковой подсистемы, объёма оперативной памяти и качества администрирования. На сопоставимом оборудовании и при грамотной настройке обе СУБД справляются с типовыми нагрузками. Выбор обычно определяется бюджетом и наличием специалистов, а не синтетической скоростью.
Сколько пользователей выдержит файловая база 1С?
Практический ориентир — до 5–10 одновременно активных пользователей. Точная граница зависит от интенсивности записи: если все только просматривают данные, работать могут и больше; если массово проводят документы, блокировки начнутся раньше. При регулярных ошибках управляемых блокировок пора планировать переход на клиент-серверный режим.
Можно ли открыть файл 1Cv8.1CD без 1С?
Штатного способа нет: формат проприетарный. Существуют сторонние утилиты для чтения структуры файловой базы, но они применяются в основном для аварийного восстановления и не гарантируют полноты данных. Для штатной работы с данными используйте платформу 1С.
Нужна ли отдельная лицензия на СУБД для 1С?
Лицензии 1С покрывают только платформу и клиентский доступ к ней. Лицензия на СУБД приобретается отдельно у соответствующего вендора: для MS SQL Server и Oracle это платные лицензии, PostgreSQL распространяется свободно, но коммерческие сборки с поддержкой оплачиваются. Учитывайте это при расчёте стоимости внедрения.
Что делать, если файловая база повредилась?
Сначала скопируйте файл 1Cv8.1CD в безопасное место — все дальнейшие операции выполняйте над копией. Затем используйте утилиту chdbfl из каталога платформы для проверки физической целостности, после неё — «Тестирование и исправление» в конфигураторе. Если база не восстанавливается, остаётся откат на последнюю рабочую резервную копию.
Что важно запомнить
1С хранит данные либо в собственном файловом формате .1CD, либо во внешней СУБД: MS SQL Server, PostgreSQL, Oracle или IBM DB2. Файловый режим подходит малым коллективам, клиент-серверный — при росте пользователей и нагрузки. Прямое редактирование данных в СУБД запрещено и опасно; выбор конкретной СУБД определяется бюджетом, инфраструктурой и наличием специалистов.