Администрирование · 11 мин
Какая СУБД лучше для 1С: практическое руководство по выбору
Разбираем, какую СУБД выбрать для 1С: файловый режим, PostgreSQL, MS SQL Server и Oracle. Критерии выбора, ограничения, настройка и типичные ошибки.
1С:Предприятие умеет работать в двух режимах хранения данных: файловом, когда база лежит в одном файле на диске или сетевой папке, и клиент-серверном, когда данными управляет полноценная СУБД. Выбор между ними — не вопрос вкуса, а инженерное решение, которое зависит от числа пользователей, объёма базы, требований к отказоустойчивости и бюджета на лицензии.
Официально платформа 1С поддерживает четыре СУБД: Microsoft SQL Server, PostgreSQL (включая сборку Postgres Pro), Oracle Database и IBM DB2. На практике реальный выбор почти всегда сводится к трём вариантам: файловый режим, PostgreSQL или MS SQL Server. Oracle и DB2 встречаются редко, в основном в крупных организациях, где эти системы уже развёрнуты и обслуживаются штатными администраторами.
Ошибка на этом этапе обходится дорого: перенос базы между СУБД через выгрузку в dt на больших объёмах занимает часы, требует остановки работы пользователей и не всегда проходит гладко. Поэтому решение стоит принимать до внедрения, а не после того, как база выросла и начала «тормозить».
Когда достаточно файлового режима
Файловый режим — это база в одном файле с расширением 1Cv8.1CD. Он не требует установки сервера, лицензий на СУБД и администратора: достаточно положить файл в общую папку. Для микробизнеса с 1–5 одновременно работающими пользователями это разумный и самый дешёвый вариант.
Ограничения режима принципиальны. Файловая база не имеет полноценной блокировки на уровне записей, поэтому при одновременной работе нескольких пользователей растут взаимные блокировки и конфликты. Нет нормального механизма резервного копирования «на горячую» — регламентное копирование файла при открытых сеансах рискованно. При размере базы в несколько гигабайт заметно деградирует скорость проведения документов и построения отчётов.
Признаки того, что файловый режим исчерпан: пользователи жалуются на ошибки «Конфликт блокировок при выполнении транзакции», отчёты строятся минутами, а файл базы регулярно требует тестирования и исправления после сбоев. Это сигнал к миграции на клиент-серверный вариант, а не повод покупать более мощный компьютер.
PostgreSQL: бесплатный стандарт для среднего бизнеса
PostgreSQL — самый популярный выбор для клиент-серверной 1С в сегменте малого и среднего бизнеса. Причины просты: СУБД бесплатна, официально поддерживается платформой, а фирма «1С» распространяет собственные сборки PostgreSQL, адаптированные под платформу. Для российских организаций доступна также Postgres Pro — отечественная версия с расширенной поддержкой.
По производительности PostgreSQL уверенно обслуживает базы с десятками одновременных пользователей и объёмом в десятки гигабайт при грамотной настройке. Ключевой момент: стандартная конфигурация PostgreSQL «из коробки» рассчитана на слабое оборудование, и без правки параметров (объём разделяемой памяти, размер журнальных буферов, настройки автовакуума) база будет работать заметно медленнее своих возможностей.
Слабые места варианта: на очень больших базах и при сложной аналитической нагрузке MS SQL Server часто показывает более стабильные результаты, а инструментов диагностики уровня Query Store у PostgreSQL нет. Кроме того, обслуживание требует специалиста, который понимает специфику связки «1С + PostgreSQL» — например, необходимость регулярного обслуживания индексов и контроля разрастания таблиц.
MS SQL Server: выбор для больших баз и высоких нагрузок
Microsoft SQL Server исторически считается эталонной СУБД для 1С: большинство крупных внедрений построено именно на нём, и под него оптимизированы многие механизмы платформы. Сильные стороны — зрелые средства диагностики производительности, понятные планы обслуживания, встроенные механизмы резервного копирования, зеркалирования и кластеризации (Always On).
Практический порог перехода на MS SQL: базы от 50–100 ГБ, десятки и сотни одновременных пользователей, требования к регламентированному времени восстановления после сбоя и к отказоустойчивости. В таких условиях стоимость лицензий обычно окупается снижением рисков простоя и трудозатрат на сопровождение.
Главное ограничение — цена. Лицензирование MS SQL Server идёт по ядрам или по серверу плюс клиентские лицензии, и для сервера под 1С сумма получается ощутимой. Существует бесплатная редакция Express, но она ограничена по объёму памяти, числу процессоров и размеру базы, поэтому для продуктивной 1С подходит только в очень маленьких инсталляциях и обычно не рассматривается как полноценное решение.
Сравнение вариантов
1–5 пользователей, база до нескольких ГБ, нет бюджета и администратора. Ограничение: блокировки, риск повреждения файла, слабая производительность при росте.
10–50 пользователей, средние базы, ограниченный бюджет. Ограничение: требует настройки и обслуживания, меньше встроенных средств диагностики.
50+ пользователей, большие базы, требования к отказоустойчивости. Ограничение: высокая стоимость лицензий.
Организации, где эти СУБД уже развёрнуты и есть штатные администраторы. Ограничение: дорого, мало специалистов по связке с 1С.
Oracle и DB2: когда они вообще нужны
Обе СУБД официально поддерживаются платформой, но их доля в инсталляциях 1С невелика. Типичный сценарий — крупное предприятие, где корпоративный стандарт уже предписывает Oracle или DB2, есть лицензии, договор поддержки и штатные администраторы баз данных. В этом случае разворачивать отдельный стек под 1С действительно нерационально.
Если такой предыстории нет, выбирать Oracle или DB2 специально под 1С смысла нет: лицензии дороже, специалистов по связке с 1С на рынке заметно меньше, а выигрыша в производительности по сравнению с грамотно настроенным MS SQL Server в типовых задачах 1С обычно не наблюдается.
Как выбрать: пошаговый алгоритм
Выбор СУБД удобно делать не по абстрактным «лучше-хуже», а по измеримым параметрам вашей инсталляции. Ниже — рабочая последовательность, которую можно пройти до покупки лицензий и развёртывания серверов.
- 1Посчитайте пиковое число одновременно работающих пользователей и оцените рост на 2–3 года вперёд.
- 2Измерьте текущий размер базы и темп её прироста (например, по размеру файла или бэкапов за несколько месяцев).
- 3Определите требования к доступности: допустим ли простой в несколько часов или нужен резервный сервер.
- 4Оцените бюджет: сможете ли вы оплатить лицензии MS SQL Server и работу администратора.
- 5До 10 пользователей и небольшой базы — оставайтесь на файловом режиме либо сразу ставьте PostgreSQL.
- 6Средняя нагрузка и ограниченный бюджет — PostgreSQL с обязательной настройкой конфигурации.
- 7Высокая нагрузка, большие базы, требования к отказоустойчивости — MS SQL Server.
- 8Проверьте результат: после развёртывания замерьте время проведения типовых документов и построения ключевых отчётов под нагрузкой.
Как выбрать действие
Минимальная настройка после установки
Установка СУБД — только половина работы. Для PostgreSQL обязательно увеличьте объём выделяемой памяти (shared_buffers), настройте параметры журнала предзаписи и включите регулярный автовакуум — иначе таблицы будут разрастаться, а запросы деградировать. Для MS SQL Server ограничьте максимальную память сервера, чтобы он не отбирал ресурсы у операционной системы и сервера 1С, и настройте модель восстановления базы в соответствии с политикой резервного копирования.
Отдельно настройте регулярное обслуживание: обновление статистики и перестроение индексов. В 1С это критично, потому что платформа активно создаёт и изменяет данные, и устаревшая статистика приводит к тому, что оптимизатор СУБД выбирает неэффективные планы запросов. Результат выглядит как «внезапные» тормоза в отчётах, которые ещё вчера работали нормально.
Как проверить результат
Стабильно, без резких скачков при росте числа пользователей
Время растёт в разы или появляются ошибки блокировок
Контролируемый, очищается по расписанию
Журнал заполняет диск, база останавливается
Создаются по расписанию и проверены тестовым восстановлением
Копии есть, но восстановление никогда не проверялось
Типичные ошибки при выборе и эксплуатации
Большинство проблем со связкой «1С + СУБД» возникает не из-за самого выбора, а из-за ошибок внедрения и сопровождения. Ниже — то, что встречается чаще всего.
Ещё одна частая ошибка — миграция «в лоб» без тестирования. Перенос базы между СУБД выполняется через выгрузку и загрузку файла .dt, и на больших базах этот процесс может занять много часов и завершиться ошибками из-за особенностей данных. Всегда выполняйте пробную миграцию на копии, замеряйте время и проверяйте целостность данных до того, как останавливать рабочую систему.
Переход с файлового режима на PostgreSQL часто даёт больший прирост стабильности, чем любая последующая замена PostgreSQL на MS SQL Server. Если бюджет ограничен, разумно сначала устранить главный источник проблем — файловый режим, — а дорогие лицензии покупать только при реальном росте нагрузки.
Часто задаваемые вопросы
Можно ли работать в 1С вообще без СУБД?
Да, это файловый режим: база хранится в одном файле 1Cv8.1CD, и отдельная СУБД не нужна. Вариант подходит для небольшого числа пользователей и небольших баз, но имеет ограничения по блокировкам, производительности и надёжности резервного копирования.
Правда ли, что PostgreSQL медленнее MS SQL Server для 1С?
Не в общем виде. На небольших и средних базах при грамотной настройке разница для пользователей малозаметна. MS SQL Server чаще выигрывает на очень больших базах и сложной аналитике, а также удобнее в диагностике проблем производительности.
Можно ли потом перейти с одной СУБД на другую?
Да, через выгрузку базы в файл .dt и загрузку на новой платформе хранения. На больших базах процесс длительный и требует остановки работы пользователей, поэтому переход планируют заранее и обязательно репетируют на копии.
Подойдёт ли бесплатная редакция MS SQL Server Express?
Только для очень маленьких инсталляций: редакция ограничена по объёму памяти, числу процессоров и максимальному размеру базы. Для продуктивной работы средней компании её возможностей обычно недостаточно, и чаще выбирают PostgreSQL как бесплатную альтернативу.
Нужен ли отдельный сервер под СУБД?
Желательно. Совмещение сервера 1С и СУБД на одной машине приводит к конкуренции за память и дисковые ресурсы. Если совмещения не избежать, обязательно ограничьте память СУБД, чтобы она не вытесняла рабочие процессы сервера 1С.
Что важнее для скорости 1С: СУБД или железо?
Оба фактора значимы, но типичный узкий момент — дисковая подсистема и объём оперативной памяти. Быстрые SSD и достаточный объём RAM под кэш СУБД часто дают больший эффект, чем смена одной поддерживаемой СУБД на другую.
Что важно запомнить
Файловый режим — для микробизнеса, PostgreSQL — рабочий стандарт для среднего сегмента, MS SQL Server — для больших баз и высоких требований к отказоустойчивости. Любая СУБД требует настройки и регламентного обслуживания, а миграцию между ними всегда следует репетировать на копии базы.