Администрирование · 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 пользователей и небольших объёмов. Не требует отдельного сервера и лицензий на СУБД, но ограничена в производительности и уязвима при сбоях сети.
Бесплатный клиент-серверный вариант. Требует установки специальной сборки и грамотной настройки параметров, иначе производительность будет заметно ниже возможной.
Платный, но предсказуемый в настройке и обслуживании в 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 не «отбирал» всю оперативную память у операционной системы, следить за фрагментацией индексов и регулярно обновлять статистику. Эти задачи оформляются планом обслуживания.
Как выбрать вариант под свою задачу
Выбор сводится к нескольким вопросам: сколько пользователей работает одновременно, каков объём базы и темп её роста, есть ли бюджет на лицензии СУБД и кто будет обслуживать сервер. Ответы на них определяют архитектуру почти однозначно.
Как выбрать действие
При сомнениях между PostgreSQL и MS SQL Server имеет смысл оценить совокупную стоимость владения: PostgreSQL бесплатен, но требует более квалифицированной настройки; MS SQL дороже по лицензиям, но дешевле в типовом сопровождении для Windows-администраторов.
Как перейти с файловой базы на клиент-серверную
Переход выполняется через выгрузку и загрузку информационной базы штатными средствами конфигуратора. Сами данные и конфигурация при этом не меняются — меняется только способ хранения.
- 1Установите и настройте СУБД (например, PostgreSQL сборки 1С) и сервер 1С:Предприятия
- 2Завершите работу всех пользователей и сделайте резервную копию файловой базы
- 3В конфигураторе выполните «Администрирование → Выгрузить информационную базу» в файл .dt
- 4Создайте новую информационную базу на сервере 1С с указанием типа СУБД и параметров подключения
- 5Откройте конфигуратор новой базы и выполните «Загрузить информационную базу» из файла .dt
- 6Проверьте вход пользователей, проведение документов и выполнение ключевых отчётов
Файл выгрузки .dt — универсальный переносимый формат: он не зависит от того, какая СУБД используется на источнике и приёмнике. Поэтому тот же способ работает при миграции между разными СУБД, например с MS SQL на PostgreSQL.
Как проверить результат
Все пользователи подключаются, права работают как раньше
Ошибки подключения к серверу 1С или СУБД, отсутствуют части данных
Документы проводятся, отчёты формируются за приемлемое время
Ошибки блокировок, таймауты, отчёты выполняются значительно дольше, чем в файловом режиме
Настроенное задание бэкапа выполняется и создаёт файл копии
Копии не создаются или восстановление из копии не проверялось
Типичные ошибки и ограничения
Отдельно стоит помнить про ограничения файлового режима: некоторые механизмы платформы (например, полноценная работа с управляемыми блокировками в нагруженных сценариях) рассчитаны на клиент-серверную архитектуру. Если прикладное решение изначально проектировалось под десятки пользователей, эксплуатировать его в файловом режиме — заведомо рискованная затея.
Часто задаваемые вопросы
Можно ли использовать 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, а корректная настройка и регулярное обслуживание СУБД не менее важны, чем сам выбор платформы хранения.