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

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

Какую СУБД использует 1С и как выбрать подходящую

Какие СУБД поддерживает 1С: файловый режим, MS SQL Server, PostgreSQL, IBM Db2, Oracle. Как выбрать базу, проверить текущую и избежать ошибок администрирования.

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

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

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

Как устроена архитектура: файловый и клиент-серверный режимы

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

Ограничения файлового режима принципиальны: файл базы блокируется при ряде операций, нет полноценного параллелизма запросов, сложно организовать регламентные задания без запущенного сеанса, а размер базы при интенсивной работе быстро упирается в практические пределы. Кроме того, сетевой доступ к файлу чувствителен к качеству сети — обрыв соединения может повредить базу.

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

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

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

СУБДЛицензионная модельТипичный сценарийКлючевые особенности
Microsoft SQL ServerПлатная (есть бесплатный Express с ограничениями)Инфраструктура на Windows, средние и крупные базыЗрелые инструменты администрирования, много специалистов на рынке
PostgreSQL / Postgres ProPostgreSQL — свободная; Postgres Pro — коммерческая сборкаЭкономия на лицензиях, Linux-инфраструктураТребуются специальные сборки/патчи, рекомендуемые 1С
IBM Db2ПлатнаяКрупные предприятия с существующей инфраструктурой IBMМеньше специалистов, реже встречается в новых проектах
Oracle DatabaseПлатная, дорогаяКрупные корпоративные системы с действующими лицензиями OracleВысокая стоимость владения, сложное лицензирование

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

Microsoft SQL Server: когда это оправданный выбор

MS SQL Server — самый распространённый вариант для клиент-серверной 1С в Windows-инфраструктуре. Причины прагматичные: огромное количество администраторов и готовых инструкций, удобный Management Studio, предсказуемое поведение под нагрузкой, полноценная поддержка со стороны 1С.

Для небольших баз существует бесплатная редакция SQL Server Express, но у неё жёсткие ограничения: ограниченный размер базы данных, лимит на используемую память и число процессорных ядер, отсутствие агента SQL Server для планировщика заданий. Для рабочей базы с несколькими десятками пользователей Express обычно не подходит — упираетесь в лимит памяти, и система начинает тормозить.

Полные редакции (Standard, Enterprise) лицензируются по ядрам или по схеме «сервер + клиентские лицензии», и стоимость может составлять заметную часть бюджета внедрения. Это главный аргумент против MS SQL и главный аргумент за PostgreSQL.

PostgreSQL и Postgres Pro: бесплатная альтернатива

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

Postgres Pro Standard и Enterprise — платные, но заметно дешевле MS SQL Server, и при этом включают оптимизации именно под нагрузку 1С. Для крупных внедрений на PostgreSQL это часто более надёжный путь, чем самостоятельная сборка и сопровождение патченного PostgreSQL.

Практические нюансы: PostgreSQL требует внимательной настройки конфигурации (память, autovacuum, параметры соединений) — настройки по умолчанию рассчитаны на слабое железо и дадут низкую производительность. Также регулярное обслуживание (VACUUM, переиндексация) здесь не опция, а необходимость: без него таблицы «разбухают», и запросы деградируют.

MS SQL Server против PostgreSQL для 1С

MS SQL Server

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

PostgreSQL (сборки 1С)

Подходит для экономии на лицензиях и Linux-инфраструктуры. Ограничение — нужны специальные сборки и более тонкая настройка, меньше специалистов с опытом именно связки 1С+PostgreSQL.

Postgres Pro

Подходит для крупных внедрений на PostgreSQL, где нужна поддержка вендора и оптимизации под 1С. Ограничение — всё же платная лицензия, хотя и дешевле MS SQL.

Db2 / Oracle

Подходят только при уже имеющейся инфраструктуре и штатных администраторах этих СУБД. Покупать их специально под 1С нерационально.

Как узнать, какая СУБД используется в вашей базе

Если система уже работает и нужно определить тип хранилища, есть несколько простых способов. Самый быстрый — открыть список информационных баз в окне запуска 1С: у клиент-серверных баз в параметрах указаны кластер серверов и имя базы данных, у файловых — путь к каталогу с файлом 1Cv8.1CD.

В конфигураторе откройте «Администрирование → Свойства информационной базы» или посмотрите строку соединения: для клиент-серверного варианта там будут параметры Srvr, Ref и, как правило, указание СУБД (DBMSSQL для MS SQL, PostgreSQL для PostgreSQL, DB2, Oracle). Администратор может дополнительно посмотреть консоль кластера серверов 1С — в свойствах базы тип СУБД указан явно.

Как определить СУБД вашей базы 1С
  1. 1
    Откройте окно запуска 1С и выделите базу: если указан путь к папке — это файловый режим, если сервер и имя базы — клиент-серверный.
  2. 2
    Откройте свойства базы (кнопка изменения в окне запуска) и посмотрите параметры соединения: Srvr и Ref означают клиент-серверный режим.
  3. 3
    В консоли кластера серверов 1С найдите информационную базу и откройте её свойства — там явно указан тип СУБД (MS SQL Server, PostgreSQL, Db2 или Oracle).
  4. 4
    При доступе к серверу БД проверьте, какие службы запущены: служба SQL Server (MSSQLSERVER) или процессы postgres подтвердят конкретную СУБД.

Миграция между СУБД: что нужно знать

Перенос базы между СУБД (например, с MS SQL на PostgreSQL) выполняется штатным механизмом выгрузки/загрузки через файл .dt: выгружаете базу из конфигуратора в файл, создаёте новую пустую базу на целевой СУБД и загружаете туда данные. Прямого переноса средствами самих СУБД (backup/restore) между разными типами баз не существует.

Главные риски миграции — длительность загрузки больших баз (часы при сотнях гигабайт), необходимость пересоздания полнотекстовых индексов и регламентных заданий, а также различия в поведении запросов: некоторые запросы, оптимальные под MS SQL, на PostgreSQL могут работать заметно медленнее, и наоборот. После миграции обязательно нагрузочное тестирование типовых операций.

Резервное копирование и обслуживание в зависимости от СУБД

Выгрузка в .dt — универсальный, но не единственный и не самый эффективный способ резервного копирования клиент-серверных баз. Для больших баз правильнее использовать штатные средства СУБД: полные и разностные бэкапы в MS SQL Server, pg_dump или физические копии с WAL-архивацией в PostgreSQL. Это быстрее, позволяет восстановить базу на точку во времени и не требует остановки работы пользователей.

Обслуживание тоже различается. В MS SQL Server настраивают планы обслуживания: обновление статистики, перестроение индексов, контроль журнала транзакций (при полной модели восстановления журнал растёт, пока не делаются бэкапы журнала). В PostgreSQL критичны настройки autovacuum и периодическая переиндексация. Пренебрежение этими операциями — самая частая причина постепенной деградации производительности 1С.

Типичные ошибки при работе с СУБД для 1С
01
Использование файлового режима для 15–20 одновременных пользователей — блокировки и риск повреждения файла при сбоях сети.
02
Развёртывание MS SQL Server Express для рабочей многопользовательской базы — упор в лимиты памяти и размера базы.
03
Установка неподдерживаемой версии СУБД «посвежее» — ошибки платформы и потеря поддержки.
04
Отсутствие регламентного обслуживания СУБД — рост таблиц, устаревшая статистика и постепенное замедление всех операций.
05
Единственная копия базы в виде выгрузки .dt без бэкапов средствами СУБД — долгое восстановление и потеря данных за период между выгрузками.

Как выбрать СУБД под новое внедрение

Алгоритм выбора сводится к нескольким вопросам. Сколько пользователей будет работать одновременно и какой ожидается объём данных? Если меньше десятка пользователей и база небольшая — начните с файлового режима с обязательным регламентом резервного копирования. Если пользователей десятки и больше — только клиент-серверный вариант.

Дальше вопрос бюджета и компетенций. Есть действующие лицензии MS SQL Server и администратор, который его знает, — выбирайте MS SQL. Бюджет ограничен, инфраструктура на Linux либо лицензионная чистота важна при минимуме затрат — PostgreSQL со сборками 1С или Postgres Pro. Db2 и Oracle разумны только при наличии готовой экспертизы в компании.

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

Как выбрать вариант хранения

До 5–10 пользователей, база небольшая, работа в одном офисеФайловый режим с ежедневным резервным копированием файла 1Cv8.1CD
Десятки пользователей, есть бюджет и Windows-инфраструктураMS SQL Server Standard с настроенными планами обслуживания
Десятки–сотни пользователей, нужно минимизировать стоимость лицензийPostgreSQL (сборки 1С) или Postgres Pro с выделенным администратором
В компании уже эксплуатируется Db2 или OracleИспользовать имеющуюся СУБД и штатных администраторов, не покупая новую платформу

Проверка результата после развёртывания или миграции

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

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

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

Тип соединения в свойствах базы
Норма

Указан ожидаемый тип СУБД, база открывается без ошибок

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

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

Скорость типовых операций
Норма

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

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

Резкое замедление после миграции — нужен анализ планов запросов и настроек СУБД

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

Бэкап создаётся по расписанию и успешно восстанавливается на тестовом стенде

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

Копии нет, не восстанавливается или восстановление не проверялось

Регламентные задания
Норма

Выполняются по расписанию, в журнале нет ошибок

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

Задания не стартуют или падают с ошибками соединения

Итог

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

1С работает либо в файловом режиме, либо с одной из четырёх СУБД: MS SQL Server, PostgreSQL/Postgres Pro, Db2, Oracle. Для большинства внедрений выбор стоит между MS SQL Server (проще сопровождать) и PostgreSQL (дешевле лицензии). Тип СУБД виден в свойствах информационной базы, а миграция между СУБД выполняется только через выгрузку/загрузку .dt с последующей проверкой производительности.

Частые вопросы

Может ли 1С работать с MySQL или MariaDB?

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

Что лучше для небольшой фирмы: файловая база или PostgreSQL?

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

Подойдёт ли бесплатный SQL Server Express для рабочей базы 1С?

Только для очень маленьких баз. Express-редакция ограничивает размер базы, объём используемой оперативной памяти и число ядер, а также не имеет агента для планировщика заданий. При росте базы и числа пользователей вы быстро упрётесь в эти лимиты, и миграция на полную редакцию станет неизбежной.

Можно ли перенести базу 1С с MS SQL на PostgreSQL без потери данных?

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

Где посмотреть, какая СУБД используется в моей базе 1С?

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

Нужно ли отдельно лицензировать СУБД для 1С?

Да, лицензии на платформу 1С не включают лицензии на СУБД. MS SQL Server, Db2 и Oracle лицензируются отдельно у соответствующих вендоров. PostgreSQL в сборках 1С распространяется свободно, а Postgres Pro — по коммерческой лицензии, обычно более доступной, чем MS SQL Server.