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

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

Встроенная файловая база данных 1С

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

  • 🏠 Одиночных рабочих мест или микробизнеса (до 5 пользователей).
  • 📊 Тестирования конфигураций и обучения сотрудников.
  • 💾 Локального хранения данных без необходимости сетевого доступа.

Основное преимущество файловой базы — простота развёртывания. Достаточно установить платформу 1С:Предприятие и создать новую информационную базу в режиме Файловый. Однако у этого варианта есть серьёзные ограничения:

  • 🚫 Максимальный размер базы — 4 ГБ (в реальности начинаются проблемы уже от 2 ГБ).
  • 🐢 Медленная работа при большом количестве документов или сложных отчётах.
  • 🔒 Отсутствие транзакционной целостности: при сбое возможна потеря данных.
⚠️ Внимание: Файловая база не поддерживает репликацию и резервное копирование на уровне СУБД. Все операции по сохранению данных должны выполняться вручную или через внешние утилиты.

Несмотря на ограничения, файловая база остаётся актуальной для стартапов и небольших компаний, где критична скорость развёртывания и минимальные затраты на инфраструктуру. Например, для ведения учёта в 1С:Бухгалтерии с объёмом документов до 10 000 в месяц этого варианта может хватить на 1–2 года работы.

📊 Какую СУБД вы используете в 1С?
Файловую базу
MS SQL Server
PostgreSQL
IBM DB2
Не знаю

MS SQL Server: стандартный выбор для среднего и крупного бизнеса

Microsoft SQL Server — наиболее популярная СУБД для в корпоративном сегменте. Она поддерживается платформой "из коробки" и предлагает оптимальное сочетание производительности, надёжности и масштабируемости. 1С:Предприятие сертифицировано для работы с версиями MS SQL начиная с 2008 R2 и до актуальных релизов (на момент написания — 2022).

Преимущества MS SQL Server для :

  • 📈 Поддержка баз данных объёмом до 524 ПБ (теоретический лимит).
  • 👥 Одновременная работа сотен пользователей без значительной потери производительности.
  • 🔄 Встроенные механизмы резервного копирования, репликации и кластеризации.
  • 🛡️ Высокий уровень безопасности: шифрование данных, аудит, управление правами доступа.

Однако есть и недостатки:

  • 💰 Лицензия MS SQL Server платная (особенно версии Enterprise или Standard).
  • 🖥️ Требует выделенного сервера с достаточными ресурсами (ОЗУ, CPU, быстрые диски).
  • 🔧 Настройка и администрирование сложнее, чем у файловой базы.
Версия MS SQL Поддержка 1С Макс. размер базы Рекомендуемое ОЗУ
2019 Standard Полная 524 ПБ от 16 ГБ
2017 Express Ограниченная 10 ГБ от 4 ГБ
2022 Enterprise Полная 524 ПБ от 32 ГБ

Для большинства компаний со штатом 20–500 сотрудников оптимальным выбором станет MS SQL Server Standard. Он поддерживает все ключевые функции , включая распределённые информационные базы и работу с большими объёмами данных. Например, для торговой сети с оборотом 50 000 документов в месяц и 50 пользователями Standard-версия обеспечит стабильную работу без задержек.

💡

При выборе MS SQL Server для отдавайте предпочтение редакции Standard или выше. Версия Express имеет жёсткое ограничение на размер базы (10 ГБ) и подходит только для тестов или микробизнеса.

PostgreSQL: бесплатная альтернатива MS SQL

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

Ключевые преимущества PostgreSQL для :

  • 🆓 Нулевая стоимость лицензий (в отличие от MS SQL).
  • 🔧 Кроссплатформенность: работает на Windows, Linux и macOS.
  • 📊 Высокая производительность при правильной настройке (в некоторых тестах опережает MS SQL).
  • 🔄 Поддержка репликации и шардинга.

Однако есть нюансы:

  • 🛠️ Требует ручной настройки параметров (например, shared_buffers, work_mem).
  • 📉 В некоторых сценариях (например, при массовой запись данных) может уступать MS SQL.
  • 📚 Меньше готовых инструкций и специалистов по настройке 1С + PostgreSQL.

Для перехода на PostgreSQL необходимо:

  1. Установить сервер PostgreSQL версии 9.6.3+ (рекомендуется 12–15).
  2. Создать базу данных с кодировкой UTF-8 и параметром collation="C".
  3. В настройках указать строку подключения вида:
    Driver={PostgreSQL Unicode};Server=localhost;Port=5432;Database=dbname;Uid=user;Pwd=password;
⚠️ Внимание: При миграции с MS SQL на PostgreSQL может потребоваться доработка конфигурации , если в ней используются специфичные для MS SQL функции (например, NEWID() для генерации GUID).

PostgreSQL показывает лучшие результаты в сценариях с большим количеством чтений и аналитических запросов (OLAP), тогда как MS SQL традиционно сильнее в транзакционных нагрузках (OLTP). Например, для холдинга с 10 филиалами и ежедневной аналитикой по продажам PostgreSQL может оказаться выгоднее за счёт бесплатности и гибкости.

IBM DB2 и Oracle Database: нишевые решения

Платформа 1С:Предприятие также поддерживает IBM DB2 и Oracle Database, но эти СУБД используются крайне редко из-за высокой стоимости и специфичных требований. Рассмотрим их кратко:

IBM DB2:

  • 🏢 Применяется в крупных корпорациях с существующей инфраструктурой на IBM.
  • 💼 Поддерживает начиная с версии 8.3.6, но требует ручной настройки.
  • 📉 Производительность сравнима с MS SQL, но лицензирование сложнее.

Oracle Database:

  • 🔗 Поддержка в экспериментальная (требует доработок).
  • 💰 Одна из самых дорогих СУБД на рынке.
  • 🛡️ Используется в проектах с жёсткими требованиями к безопасности (например, банки).

Эти варианты актуальны только для компаний, уже использующих IBM DB2 или Oracle в других системах и желающих унифицировать инфраструктуру. Для типичных задач (бухучёт, торговля, зарплата) они избыточны.

Когда стоит рассматривать IBM DB2 или Oracle?

Эти СУБД оправданы только в двух случаях: 1) если ваша компания уже использует их для других критичных систем (ERP, CRM) и хочет сократить количество разных платформ; 2) если у вас есть специфичные требования по безопасности или отраслевым стандартам (например, PCI DSS для платежных систем), которые проще выполнить на Oracle.

Сравнение производительности СУБД в 1С

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

СУБД Время формирования отчёта (100к строк) Запись 10к документов Макс. пользователей без лагов
Файловая база 45 сек 120 сек 3–5
MS SQL Express 12 сек 45 сек 10–15
MS SQL Standard 5 сек 20 сек 50–100
PostgreSQL 6 сек 25 сек 50–80

Из таблицы видно, что PostgreSQL в некоторых сценариях превосходит MS SQL, особенно при аналитических запросах. Однако для транзакционных нагрузок (например, одновременная запись данных от нескольких пользователей) MS SQL Standard остаётся лидером.

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

  • 🖥️ Аппаратная часть: для MS SQL и PostgreSQL рекомендуется SSD-накопители и не менее 16 ГБ ОЗУ.
  • 🔧 Настройки СУБД: например, в PostgreSQL критично правильно выставить work_mem и maintenance_work_mem.
  • 📂 Структура базы: неоптимизированные запросы в конфигурации могут "тормозить" даже на мощном сервере.
💡

Для большинства компаний оптимальным выбором станет MS SQL Standard или PostgreSQL. Файловая база подходит только для микробизнеса, а IBM DB2/Oracle — для специфичных корпоративных задач.

Как выбрать СУБД для 1С: пошаговый алгоритм

Чтобы определиться с СУБД, ответьте на следующие вопросы:

  1. Сколько пользователей будет работать одновременно?
    • 1–5 → файловая база или MS SQL Express.
    • 10–50 → MS SQL Standard или PostgreSQL.
    • 50+ → MS SQL Standard/Enterprise или кластер PostgreSQL.
  2. Какой бюджет на лицензии?
    • 0 руб. → PostgreSQL или файловая база.
    • До 200 тыс. руб. → MS SQL Standard.
    • Свыше 500 тыс. руб. → MS SQL Enterprise или Oracle.
  • Какие задачи решает 1С?
    • Бухучёт/зарплата → MS SQL Standard.
    • Аналитика/OLAP → PostgreSQL.
    • Высоконагруженная торговля → кластер MS SQL.
    • Пример 1: Для интернет-магазина с 30 менеджерами и оборотом 10 000 заказов в месяц оптимален MS SQL Standard на сервере с 32 ГБ ОЗУ и SSD.

      Пример 2: Для холдинга с 5 филиалами и требованием к бесплатному ПО подойдёт PostgreSQL на Linux-сервере с репликацией.

      1. Создать резервную копию текущей базы

      2. Проверить совместимость конфигурации 1С с новой СУБД

      3. Настроить тестовое окружение для проверки производительности

      4. Обновить драйверы и клиентские библиотеки (например, ODBC для PostgreSQL)

      5. Провести обучение администраторов и пользователей

      -->

      Типичные ошибки при выборе и настройке СУБД

      Даже опытные администраторы иногда допускают ошибки, которые ведут к падению производительности или потере данных. Рассмотрим самые распространённые:

      1. Игнорирование резервного копирования.

        В файловой базе резервирование должно выполняться ежедневно (например, через 1cv8.exe /DumpIB). Для MS SQL и PostgreSQL настройте автоматическое резервирование на уровне СУБД.

      2. Недостаточные ресурсы сервера.

        Для MS SQL с 50 пользователями требуется не менее 32 ГБ ОЗУ и быстрые диски (SSD NVMe). Файловая база может работать на слабом железе, но рискует "зависнуть" при пиковых нагрузках.

      3. Отсутствие индексов.

        В индексы создаются автоматически, но для сложных отчётов может потребоваться ручная оптимизация. Например, в PostgreSQL добавьте индекс для часто используемых полей:

        CREATE INDEX idx_document_date ON documents(date);

      4. Несовместимые настройки коллирования.

        Для PostgreSQL обязательно укажите collation="C" при создании базы, иначе возможны ошибки сортировки кириллических символов.

      ⚠️ Внимание: При миграции с файловой базы на клиент-серверную (например, MS SQL) не забывайте переносить внешние отчёты и обработки. Они могут храниться вне основной базы и не копироваться автоматически.

      Ещё одна типичная проблема — фрагментация данных. В MS SQL её можно устранить командой:

      DBCC INDEXDEFRAG (0, 'TableName', 'IndexName')

      В PostgreSQL поможет VACUUM FULL.

      FAQ: Частые вопросы о СУБД в 1С

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

      Да, но требуется предварительная подготовка:

      1. Создать дамп базы через 1cv8.exe /DumpIB.
      2. Проверить конфигурацию на использование специфичных для MS SQL функций (например, GETDATE() вместо CURRENT_DATE).
      3. Импортировать дамп в PostgreSQL с помощью утилиты restore_db.

    Рекомендуется протестировать перенос на копии базы перед работой с продуктивной средой.

    Какая СУБД лучше для 1С:УТ (Управление торговлей) с 100 пользователями?

    Для 1С:Управление торговлей с такой нагрузкой оптимален MS SQL Standard или кластер PostgreSQL с мастер-репликой. Критичные требования:

    • Сервер с 64 ГБ ОЗУ и SSD RAID 10.
    • Отдельные диски для логов и данных.
    • Настройка пула соединений в (параметр MaxPoolSize).

    Файловая база или MS SQL Express не подойдут из-за ограничений на размер и количество подключений.

    Можно ли использовать 1С с базой на Linux?

    Да, но с оговорками:

    • PostgreSQL на Linux поддерживается официально.
    • MS SQL Server также доступен для Linux (начиная с версии 2017).
    • Клиентское приложение работает только на Windows (для Linux можно использовать Wine или виртуальные машины).
    • Для полноценной работы рекомендуется сервер на Linux + PostgreSQL + клиенты на Windows.

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

    Откройте конфигуратор и выполните:

    1. Перейдите в меню Файл → Открыть....
    2. Выберите свою базу и нажмите Изменить.
    3. В поле Тип расположения базы данных будет указано:
      • На этом компьютере или на компьютере в локальной сети → файловая база.
      • На сервере 1С:Предприятия → клиент-серверный вариант (MS SQL, PostgreSQL и др.).
  • Для клиент-серверной базы точный тип СУБД можно узнать в настройках подключения или через запрос:

    ВЫБРАТЬ ТИПЗНАЧЕНИЯ(Новый ОписаниеТипов("Строка").Тип) КАК ТипСУБД;

    Что делать, если база 1С на MS SQL стала медленно работать?

    Проверьте следующие моменты:

    1. Ресурсы сервера: загрузка CPU, ОЗУ, дисков (через Диспетчер задач или SQL Server Management Studio).
    2. Фрагментация индексов: выполните DBCC INDEXDEFRAG или REINDEX.
    3. Статистика: обновите статистику запросов:
      EXEC sp_updatestats;
    4. Блокировки: проверьте активные блокировки:
      SELECT * FROM sys.dm_tran_locks;
    5. Настройки 1С: отключите ненужные фоновые задачи в конфигураторе.

    Если проблема сохраняется, рассмотрите миграцию на более мощный сервер или оптимизацию запросов в конфигурации.