Администрирование · 13 мин
1С и базы данных: на чём работает платформа и что выбрать
На чём работают базы данных 1С: файловый режим, MS SQL, PostgreSQL, Oracle и IBM DB2. Сравнение вариантов, требования, выбор под задачу и типичные ошибки.
Когда говорят «1С базы данных на чём работает», речь идёт о двух принципиально разных способах хранения информационной базы: файловом режиме и клиент-серверном. В файловом варианте 1С не использует СУБД вовсе — вся база хранится в одном файле формата 1Cv8.1CD. В клиент-серверном варианте платформа 1С:Предприятие работает поверх внешней системы управления базами данных, и именно она отвечает за хранение, блокировки и транзакции.
Поддерживаемых СУБД немного: Microsoft SQL Server, PostgreSQL (включая сборку Postgres Pro), IBM DB2 и Oracle Database. Это ограниченный список — платформа не умеет работать с MySQL, SQLite или другими популярными базами, потому что использует собственный механизм генерации запросов под конкретные диалекты SQL. Выбор СУБД влияет на производительность, стоимость лицензий, требования к администрированию и отказоустойчивость.
Понимание, на чём крутится ваша база, нужно не только администратору. От этого зависят лимиты одновременных пользователей, скорость проведения документов, возможность делать резервные копии «на горячую» и даже допустимость некоторых функций — например, полнотекстового поиска или фоновых заданий.
Как устроено хранение данных в 1С
Платформа 1С:Предприятие — это не просто прикладная программа, а трёхзвенная система: клиентское приложение, сервер 1С (или файловый доступ) и слой хранения данных. Разработчик описывает структуру данных в конфигураторе — справочники, документы, регистры, — а платформа сама преобразует эти объекты в таблицы и запросы конкретной СУБД. Прямой доступ к таблицам обходными средствами не предусмотрен и не поддерживается.
В файловом режиме вся структура метаданных, данные таблиц, индексы и служебная информация упакованы в единый файл 1Cv8.1CD в каталоге базы. Этот формат — собственная разработка вендора, он не совместим ни с одной внешней СУБД. Открыть такой файл чем-то кроме платформы 1С нельзя.
В клиент-серверном режиме файловая структура заменяется базой в выбранной СУБД. Сервер 1С принимает запросы от клиентов, формирует SQL-запросы к СУБД и управляет транзакциями. Кроме данных, в каталоге базы на сервере 1С хранится служебная информация кластера, но сами бизнес-данные живут именно в СУБД.
Файловый режим: база в одном файле 1Cv8.1CD
Файловый вариант — самый простой способ развёртывания: база создаётся в обычной папке на диске или на сетевом ресурсе, и пользователи подключаются к ней напрямую. Никакой отдельной СУБД устанавливать не нужно, поэтому такой режим часто выбирают для старта работы, для тестовых баз и для небольших офисов.
У файлового режима есть жёсткие ограничения. Комфортная работа обычно возможна при нескольких одновременных пользователях; при росте числа сеансов блокировки таблиц становятся всё заметнее, а проведение документов начинает мешать отчётам. При размещении файла на сетевом диске скорость сильно зависит от сети: обрыв соединения во время записи может повредить файл базы.
Ещё одно ограничение — отсутствие части функциональности. В файловом режиме недоступны некоторые механизмы, которые требуют сервера 1С: полноценное управление фоновыми заданиями, разграничение нагрузки, работа через веб-сервер с тонким распределением ролей. Резервное копирование, впрочем, предельно простое: достаточно скопировать файл базы, предварительно завершив все сеансы.
Клиент-серверный режим: на каких СУБД работает 1С
Клиент-серверный вариант требует трёх компонентов: сервера 1С:Предприятия, СУБД и клиентских приложений. Платформа официально поддерживает четыре системы управления базами данных, и выбор между ними — один из ключевых архитектурных вопросов внедрения.
Важно понимать: 1С не хранит бизнес-логику в СУБД. Хранимые процедуры и триггеры платформой практически не используются, СУБД выполняет роль «умного» хранилища с транзакциями и блокировками. Поэтому перенос базы между поддерживаемыми СУБД технически возможен через выгрузку в файл .dt и загрузку на новой платформе.
| СУБД | Лицензирование | Когда обычно выбирают |
|---|---|---|
| Microsoft SQL Server | Платная, есть бесплатный Express с ограничениями | Самый распространённый вариант; зрелые средства администрирования, много специалистов |
| PostgreSQL / Postgres Pro | Свободная лицензия; Postgres Pro — коммерческая сборка | Снижение стоимости владения, импортозамещение, Linux-инфраструктура |
| IBM DB2 | Платная | Крупные организации с существующей инфраструктурой IBM |
| Oracle Database | Платная, дорогая | Крупные предприятия с корпоративным стандартом на Oracle |
Сравнение вариантов
Подходит для 1–5 пользователей и тестовых баз. Не нужна СУБД, простое копирование. Ограничение: блокировки и риск повреждения файла при сбоях сети.
Подходит большинству средних и крупных внедрений на Windows. Ограничение: стоимость лицензий на сервер и подключения.
Подходит при ограниченном бюджете и готовности администрировать Linux. Ограничение: требуется специальная сборка и аккуратная настройка параметров.
Подходят, если они уже корпоративный стандарт. Ограничение: высокая стоимость и дефицит специалистов именно по связке с 1С.
Как выбрать режим и СУБД под свою задачу
Основные критерии выбора — число одновременных пользователей, объём базы, требования к доступности и бюджет. Для небольшой фирмы, где с базой работают бухгалтер и менеджер, файловый режим на локальном диске сервера или выделенного компьютера — разумное и дешёвое решение. Покупка серверных лицензий здесь не окупится.
Когда пользователей становится больше десятка, база растёт до десятков гигабайт, а простой критичен для бизнеса, переход на клиент-серверный режим становится практически неизбежным. Выбор между MS SQL и PostgreSQL чаще всего сводится к бюджету и компетенциям администраторов: MS SQL проще в сопровождении для Windows-инфраструктуры, PostgreSQL дешевле, но требовательнее к настройке.
Отдельно учитывайте требования конкретной конфигурации. Крупные решения (ERP, комплексная автоматизация) при интенсивной работе ощутимо нагружают дисковую подсистему СУБД, поэтому для них важны быстрые диски под базу и журнал транзакций, а также достаточный объём оперативной памяти на сервере СУБД.
Как выбрать действие
Требования к инфраструктуре и совместимость версий
Каждая версия платформы 1С:Предприятия поддерживает конкретные версии СУБД, и этот список меняется от релиза к релизу. Перед установкой или обновлением СУБД сверяйтесь с системными требованиями вашей версии платформы: использование неподдерживаемой версии СУБД приводит к ошибкам, которые сложно диагностировать.
Типичная схема размещения — два сервера: один под сервер 1С, второй под СУБД. На небольших нагрузках допустимо совмещение на одной машине, но тогда конкуренция за память и диски может стать узким местом. Рабочие процессы сервера 1С и СУБД оба активно используют оперативную память, и её объём нужно планировать с запасом.
Для PostgreSQL важен отдельный нюанс: платформа требует специальную сборку с определёнными параметрами компиляции и рекомендуемыми настройками конфигурационного файла. Установка «ванильного» PostgreSQL из репозитория без этих доработок — частая причина проблем с производительностью и ошибок при создании базы.
Резервное копирование и обслуживание в разных режимах
В файловом режиме резервная копия — это либо копия файла 1Cv8.1CD при завершённых сеансах, либо выгрузка в файл .dt через конфигуратор. Выгрузка в dt универсальнее: она переносима между режимами и СУБД, но на больших базах занимает много времени и не подходит как ежедневный механизм.
В клиент-серверном режиме резервное копирование выполняется штатными средствами СУБД: полные и разностные копии, копии журнала транзакций. Это позволяет делать бэкапы без остановки работы пользователей и восстанавливать базу на произвольный момент времени. Дополнительно рекомендуется периодическая выгрузка в dt как защита от логических повреждений и ошибок обновления.
Обслуживание тоже различается. Файловая база нуждается в периодической проверке утилитой chdbfl.exe и тестировании-исправлении через конфигуратор. База в СУБД требует регламентных операций: обновления статистики, перестроения индексов, контроля роста журнала транзакций. Пренебрежение этими операциями постепенно деградирует производительность даже на мощном оборудовании.
- 1Проверьте совместимость версий платформы 1С и выбранной СУБД по системным требованиям
- 2Установите и настройте СУБД, выделите отдельные диски под данные и журнал транзакций
- 3Установите сервер 1С:Предприятия и создайте кластер
- 4Сделайте выгрузку файловой базы в файл .dt через конфигуратор
- 5Создайте новую информационную базу на сервере 1С с указанием СУБД и загрузите dt
- 6Настройте резервное копирование средствами СУБД и проверьте тестовое восстановление
- 7Проверьте работу пользователей: проведение документов, отчёты, фоновые задания
Типичные ошибки и как проверить, что всё настроено верно
Самая частая ошибка — размещение файловой базы на сетевой папке при большом числе пользователей. Это приводит к блокировкам, медленной работе и риску повреждения файла при обрыве сети. Если пользователей больше нескольких человек, правильный ответ — клиент-серверный режим, а не «более быстрый сетевой диск».
Вторая группа ошибок — работа с базой в СУБД напрямую. Ручное изменение таблиц через SQL-запросы нарушает внутреннюю согласованность данных 1С и лишает поддержки. Все изменения данных должны выполняться только средствами платформы: конфигуратором, обработками, типовыми механизмами.
Третья ошибка — отсутствие проверки восстановления из резервных копий. Бэкап, который ни разу не восстанавливали на тестовом сервере, нельзя считать рабочим. Периодическая проверка восстановления — единственный способ убедиться, что копии действительно защищают данные.
Как проверить результат
Документы проводятся без длительных ожиданий блокировок
Частые ошибки «Конфликт блокировок» и зависания сеансов
Копия восстанавливается на тестовом сервере и открывается в 1С
Восстановление падает с ошибкой или база не открывается
Размеры контролируются регламентными заданиями, диск не переполняется
Журнал транзакций растёт до заполнения диска
Версия СУБД входит в список поддерживаемых вашей платформой
Версия СУБД новее или старше поддерживаемого диапазона
FAQ: частые вопросы о базах данных 1С
Можно ли работать в 1С без какой-либо СУБД?
Да, это файловый режим: база хранится в одном файле 1Cv8.1CD, и никакая внешняя СУБД не нужна. Такой вариант подходит для небольшого числа пользователей и не требует дополнительных лицензий, но ограничен по масштабируемости и отказоустойчивости.
Что лучше для 1С — MS SQL или PostgreSQL?
Однозначного ответа нет. MS SQL проще в администрировании в Windows-среде и имеет больше специалистов на рынке, но требует платных лицензий. PostgreSQL бесплатен, но нуждается в специальной сборке и более тонкой настройке. При равной квалификации администраторов обе связки стабильно работают под нагрузкой.
Можно ли перенести базу с файлового режима на SQL?
Да, стандартный путь — выгрузка базы в файл .dt через конфигуратор и загрузка в новую базу, созданную на сервере 1С с указанием СУБД. Перед переносом сделайте резервную копию и проверьте, что версия платформы поддерживает выбранную СУБД.
Почему нельзя открыть файл 1Cv8.1CD другой программой?
Это закрытый внутренний формат платформы 1С, не совместимый ни с одной внешней СУБД. Доступ к данным возможен только через платформу: конфигуратор, клиентские приложения или выгрузку в dt. Инструменты прямого чтения файла существуют только как нештатные утилиты и не гарантируют корректность.
Нужен ли отдельный сервер под СУБД для 1С?
Для небольшой нагрузки сервер 1С и СУБД можно разместить на одной машине. При росте числа пользователей и объёма базы рекомендуется разделение: так проще управлять памятью, дисками и обновлениями, а отказ одного компонента не останавливает диагностику другого.
Что важно запомнить
1С работает либо в файловом режиме (один файл 1Cv8.1CD, без СУБД), либо в клиент-серверном — с MS SQL Server, PostgreSQL/Postgres Pro, IBM DB2 или Oracle. Выбор зависит от числа пользователей, объёма базы и бюджета. Ключевые правила: не править данные напрямую в СУБД, проверять совместимость версий, делать бэкапы и регулярно проверять их восстановление.