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

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

Какую базу данных использует 1С: обзор вариантов и критерии выбора

Разбираем, какую БД использует 1С: файловый вариант, PostgreSQL, MS SQL, Oracle, IBM DB2. Как выбрать СУБД, настроить и проверить корректность работы.

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

Для небольших компаний чаще всего достаточно файлового режима: вся информационная база размещается в одном файле с расширением .1CD. Когда число одновременно работающих пользователей превышает 5–10 человек, стандартной практикой становится переход на клиент-серверную архитектуру с полноценной СУБД.

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

Файловый режим: встроенная база 1С без отдельной СУБД

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

Файловый вариант уместен для одного пользователя или небольшой группы до примерно 5 человек, работающих по локальной сети. Базу можно разместить на общем сетевом ресурсе или опубликовать через веб-сервер. Главные ограничения — рост времени отклика при увеличении объёма данных и количества пользователей, а также повышенный риск повреждения файла при сбоях сети или питания.

Практический признак того, что файловый режим исчерпал себя: пользователи жалуются на «подвисания» при проведении документов, длительное выполнение отчётов, ошибки блокировок при одновременной работе. Если база выросла до нескольких гигабайт и работает более 5–7 человек одновременно, стоит планировать переход на клиент-серверный вариант.

Клиент-серверная архитектура: как 1С работает с внешней СУБД

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

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

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

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

СУБДЛицензияТипичный сценарийОсобенности
PostgreSQL (сборка 1С)БесплатнаяМалый и средний бизнес, экономия на лицензияхТребуется специальная сборка с патчами 1С; тонкая настройка конфигурации
Microsoft SQL ServerПлатная, по ядрам или CALКомпании с инфраструктурой WindowsПростая интеграция, удобные инструменты администрирования
Oracle DatabaseПлатная, дорогаяКрупные предприятия с существующими лицензиями OracleВысокие требования к квалификации DBA
IBM DB2ПлатнаяОрганизации с парком решений IBMРедкий выбор для новых внедрений

На практике подавляющее большинство новых внедрений выбирает между PostgreSQL и MS SQL Server. Oracle и DB2 встречаются в основном там, где предприятие уже имеет лицензии и штатных администраторов этих СУБД.

Сравнение вариантов

Файловая база

Подходит для 1–5 пользователей и небольших объёмов. Не требует отдельного сервера и лицензий на СУБД, но ограничена в производительности и уязвима при сбоях сети.

PostgreSQL (сборка 1С)

Бесплатный клиент-серверный вариант. Требует установки специальной сборки и грамотной настройки параметров, иначе производительность будет заметно ниже возможной.

MS SQL Server

Платный, но предсказуемый в настройке и обслуживании в Windows-инфраструктуре. Стоимость лицензий — главный ограничивающий фактор.

PostgreSQL: бесплатный вариант для клиент-серверной 1С

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

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

Регулярное обслуживание включает обновление статистики и очистку (vacuum) — при интенсивной записи данных без этого постепенно деградирует производительность. Эти операции обычно автоматизируют штатными средствами СУБД (autovacuum) с подобранными параметрами.

Microsoft SQL Server: платный, но простой в эксплуатации

MS SQL Server традиционно выбирают организации, уже работающие в экосистеме Windows: знакомые инструменты администрирования (SQL Server Management Studio), встроенные механизмы бэкапа, понятная модель обслуживания. Для 1С это исторически самый распространённый платный вариант.

Ключевой фактор — стоимость лицензирования. SQL Server лицензируется по ядрам процессора или по модели «сервер + клиентские лицензии», и для мощного сервера затраты могут быть существенными. Существует бесплатная редакция Express, но её ограничения по объёму памяти и размеру базы делают её непригодной для сколько-нибудь нагруженных баз 1С.

Из специфики настройки под 1С: рекомендуется задавать максимальный объём памяти сервера, чтобы SQL Server не «отбирал» всю оперативную память у операционной системы, следить за фрагментацией индексов и регулярно обновлять статистику. Эти задачи оформляются планом обслуживания.

Как выбрать вариант под свою задачу

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

Маршрут решения

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

Работает 1–5 пользователей, база небольшая, бюджет минималенОставайтесь на файловом режиме, разместите базу на надёжном диске и настройте регулярное резервное копирование
Пользователей 5–50, есть системный администратор, бюджет ограниченРазверните сервер 1С + PostgreSQL (сборка 1С) и выполните базовую настройку конфигурации СУБД
Инфраструктура построена на Windows, есть бюджет и требования к поддержкеВыберите MS SQL Server, настройте план обслуживания: бэкапы, переиндексацию, обновление статистики
Предприятие уже лицензировало Oracle или DB2 и имеет штатных DBAИспользуйте существующую СУБД — покупать вторую платформу нет смысла

При сомнениях между PostgreSQL и MS SQL Server имеет смысл оценить совокупную стоимость владения: PostgreSQL бесплатен, но требует более квалифицированной настройки; MS SQL дороже по лицензиям, но дешевле в типовом сопровождении для Windows-администраторов.

Как перейти с файловой базы на клиент-серверную

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

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

Файл выгрузки .dt — универсальный переносимый формат: он не зависит от того, какая СУБД используется на источнике и приёмнике. Поэтому тот же способ работает при миграции между разными СУБД, например с MS SQL на PostgreSQL.

Контрольные точки

Как проверить результат

Вход пользователей в новую базу
Норма

Все пользователи подключаются, права работают как раньше

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

Ошибки подключения к серверу 1С или СУБД, отсутствуют части данных

Проведение документов и отчёты
Норма

Документы проводятся, отчёты формируются за приемлемое время

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

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

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

Настроенное задание бэкапа выполняется и создаёт файл копии

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

Копии не создаются или восстановление из копии не проверялось

Типичные ошибки и ограничения

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

Отдельно стоит помнить про ограничения файлового режима: некоторые механизмы платформы (например, полноценная работа с управляемыми блокировками в нагруженных сценариях) рассчитаны на клиент-серверную архитектуру. Если прикладное решение изначально проектировалось под десятки пользователей, эксплуатировать его в файловом режиме — заведомо рискованная затея.

Часто задаваемые вопросы

Можно ли использовать MySQL или другую СУБД с 1С?

Нет. Платформа 1С:Предприятие 8 поддерживает строго ограниченный список СУБД: PostgreSQL (сборка 1С), Microsoft SQL Server, Oracle Database и IBM DB2. Подключить MySQL, MariaDB или SQLite штатными средствами нельзя — платформа просто не имеет соответствующего драйвера доступа к данным.

Как узнать, в каком режиме работает моя база 1С?

Откройте конфигуратор и посмотрите свойства информационной базы в списке баз при запуске: для файлового режима указывается путь к каталогу с файлом 1Cv8.1CD, для клиент-серверного — имя сервера 1С и имя базы. Также режим виден в конфигураторе через «Администрирование → Свойства информационной базы».

Нужно ли покупать отдельную лицензию на PostgreSQL для 1С?

Нет, PostgreSQL распространяется бесплатно, включая сборку с патчами 1С. Оплачиваются лицензии на саму платформу 1С и, при клиент-серверном режиме, лицензия на сервер 1С:Предприятия. Доступ к сборке PostgreSQL предоставляется зарегистрированным пользователям платформы.

Что делать, если повреждён файл файловой базы 1Cv8.1CD?

Сначала сделайте копию повреждённого файла. Затем попробуйте штатную утилиту chdbfl.exe из каталога платформы — она проверяет физическую целостность файла. После неё выполните «Тестирование и исправление» в конфигураторе. Если база не открывается, восстановление возможно только из резервной копии — поэтому регулярные бэкапы обязательны.

Можно ли перенести базу с MS SQL Server на PostgreSQL?

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

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

Точного порога нет — он зависит от конфигурации, объёма данных и интенсивности работы. Ориентировочно комфортная работа возможна для 1–5 одновременных пользователей; при 7–10 и более обычно начинаются конфликты блокировок и заметное замедление. Это сигнал к переходу на клиент-серверный режим.

Итог

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

1С хранит данные либо в собственном файле 1Cv8.1CD (для небольших баз), либо во внешней СУБД: PostgreSQL, MS SQL Server, Oracle или IBM DB2. Переход на клиент-серверный режим выполняется через выгрузку .dt, а корректная настройка и регулярное обслуживание СУБД не менее важны, чем сам выбор платформы хранения.