Какую базу данных выбрать для 1С: файловый режим, MS SQL, PostgreSQL или Oracle
Содержание
1С:Предприятие 8.3 работает в двух вариантах: в файловом режиме на собственном движке платформы и в клиент-серверном режиме на одной из внешних СУБД — Microsoft SQL Server, PostgreSQL, IBM Db2 или Oracle Database. Других баз данных платформа не поддерживает: MySQL, MariaDB, SQLite и Firebird для хранения информационной базы не подойдут.
Частое заблуждение — «1С сама по себе база данных, СУБД не нужна». Для одного-трёх пользователей это правда: файловый режим хранит всё в одном файле и не требует ничего ставить. Но как только растёт число людей, объём данных и требования к надёжности, без сервера 1С и внешней СУБД не обойтись.
Какие базы данных поддерживает платформа 1С 8.3
Сначала разберём саму схему. В клиент-серверном режиме пользователи подключаются не к СУБД напрямую, а к серверу 1С:Предприятия. Сервер 1С уже обращается к базе данных. Поэтому для работы с SQL-базой нужны два компонента: кластер серверов 1С и сама СУБД.
| Вариант | Тип | Стоимость СУБД | Где применяют |
|---|---|---|---|
| Файловый режим | встроенный движок, файл 1Cv8.1CD | бесплатно | 1–5 пользователей, небольшие базы |
| Microsoft SQL Server | клиент-сервер | платная (кроме Express) | средние и крупные внедрения на Windows |
| PostgreSQL (сборка для 1С) | клиент-сервер | бесплатная | от малых до крупных, Windows и Linux |
| Postgres Pro | клиент-сервер | платные редакции | крупные базы, требования к отечественному ПО |
| IBM Db2 | клиент-сервер | платная | редкие корпоративные внедрения |
| Oracle Database | клиент-сервер | платная, дорогая | исторические крупные проекты |
💡 Конкретные версии СУБД, с которыми работает ваш релиз платформы, указаны в системных требованиях к нему. Перед установкой сверьте номер: старая платформа может не поддерживать свежую версию СУБД, и наоборот.
Для клиент-серверного режима нужна отдельная лицензия на сервер 1С (уровня ПРОФ или КОРП). Пользовательские лицензии её не заменяют. Тип СУБД на набор лицензий 1С не влияет, но саму СУБД, если она платная, лицензируют отдельно у её производителя.
Файловый режим 1С: где хватает, а где начинаются проблемы
Файловая база — это каталог с файлом 1Cv8.1CD внутри. Платформа сама читает и пишет в этот файл, а при работе по сети каждый клиент открывает его через общую папку.
✅ Когда файловый режим оправдан:
- 1–3 пользователя, работающих в базе одновременно;
- база до нескольких гигабайт;
- ИП или небольшая фирма на упрощёнке;
- учебная, тестовая или копия для экспериментов;
- работа через сервис 1С:Фреш или у провайдера, где режим выбирает он.
⛔ Когда он начинает мешать:
- 5–10 и больше пользователей в сети — растут ожидания на блокировках, проведение тормозит у всех;
- база разрослась до десятков гигабайт — долгое открытие, долгое тестирование;
- нужна регламентная работа без остановки: при файловом варианте многие операции требуют выгнать всех;
- база лежит на сетевом диске с нестабильной сетью — растёт риск повреждения файла.
Самая частая причина «битых» файловых баз — обрыв сети или питания во время записи. Если файловая база лежит на сервере, а пользователи ходят к ней по Wi-Fi, это прямой путь к ошибкам и восстановлению через тестирование.
Не держите файловую базу в папке, синхронизируемой облачным сервисом (Яндекс Диск, OneDrive и подобные). Синхронизация файла во время работы портит его.
Промежуточный вариант — опубликовать файловую базу на веб-сервере и пускать пользователей через браузер или тонкий клиент по HTTP. Это снимает проблему с сетевыми папками, но не убирает ограничений самого файлового движка по нагрузке.
Microsoft SQL Server для 1С: стабильный выбор на Windows
MS SQL Server долгие годы был основной СУБД для 1С. Платформа исторически тестировалась на нём в первую очередь, а у администраторов накоплен большой опыт настройки.
Плюсы
- 👍 предсказуемая производительность на типовых конфигурациях;
- 👍 удобные инструменты: SQL Server Management Studio, планы обслуживания, мастер резервного копирования;
- 👍 много готовых рекомендаций по настройке именно под 1С.
Минусы
- 👎 платные редакции Standard и Enterprise лицензируются по ядрам процессора; ориентировочно — от сотен тысяч рублей за сервер и выше;
- 👎 после 2022 года официальная покупка в России затруднена, продление и поддержка — вопрос к поставщику;
- 👎 бесплатная редакция Express ограничивает размер одной базы 10 ГБ и использует ограниченный объём памяти и ядер.
Что настроить сразу
- При создании базы через 1С выбирайте сортировку, которую предлагает платформа, — обычно
Cyrillic_General_CI_AS. - Ограничьте параметр
max server memory: SQL Server по умолчанию забирает почти всю память, и серверу 1С на той же машине её не хватит. - Выберите модель восстановления.
Simpleпроще в обслуживании;Fullпозволяет восстановиться на момент времени, но требует регулярного бэкапа журнала транзакций — иначе файл.ldfвырастет до размера диска. - Вынесите
tempdbна быстрый SSD: 1С активно работает с временными таблицами. - Настройте план обслуживания: обновление статистики, перестроение индексов, резервное копирование .
💡 Обновление статистики — самый недооценённый пункт. Устаревшая статистика даёт плохие планы запросов, и отчёты, работавшие секунды, начинают работать минуты.
PostgreSQL для 1С: бесплатная альтернатива
PostgreSQL сегодня — главная альтернатива MS SQL, а для новых внедрений в России — часто первый выбор. Причина простая: бесплатная лицензия, работа на Linux и отсутствие проблем с покупкой.
Обычный PostgreSQL из репозитория дистрибутива для 1С не подходит. Платформе нужны доработки: собственные типы данных для строк, расширения для работы с временными таблицами и планировщиком. Поэтому используют:
- сборку PostgreSQL, которую 1С выпускает для своей платформы, — она бесплатна и скачивается с портала обновлений с вашей учётной записью;
- коммерческий Postgres Pro (Standard или Enterprise) с поддержкой 1С.
Чем хорош PostgreSQL
- 💰 сама СУБД бесплатна, платить нужно только за лицензии 1С и железо;
- 🐧 сервер СУБД и сервер 1С можно поставить на Linux;
- 🇷🇺 есть отечественная коммерческая версия с поддержкой — важно для госсектора и компаний с требованиями к импортозамещению.
О чём помнить
- Часть тяжёлых запросов на PostgreSQL может работать медленнее, чем на MS SQL, особенно в старых доработках. Проверяйте ключевые отчёты и закрытие месяца на копии.
- Без настройки параметров PostgreSQL работает заметно хуже своих возможностей. Минимум —
shared_buffers,effective_cache_size,work_mem,max_connections. - Автоочистка (
autovacuum) должна быть включена и успевать за нагрузкой, иначе таблицы «пухнут». - Кодировка базы —
UTF8, локаль — русская (ru_RU.UTF-8на Linux).
Пример базовой проверки параметров через psql:
SHOW shared_buffers;
SHOW effective_cache_size;
SHOW work_mem;
SHOW autovacuum;
💡 Отправная точка для shared_buffers — около четверти оперативной памяти сервера СУБД. Дальше значения подбирают по нагрузке, а не копируют из чужих конфигов.
Oracle и IBM Db2: когда дорогие СУБД ещё встречаются
Oracle Database и IBM Db2 официально остаются в списке поддерживаемых платформой, но для 1С их выбирают редко.
Oracle Database — мощная СУБД с богатыми средствами кластеризации и отказоустойчивости. Для 1С это избыточно: лицензии Enterprise Edition стоят в разы дороже MS SQL, специалистов «Oracle + 1С» мало, готовых рекомендаций по настройке — тоже. Её встречают там, где Oracle уже стоит как корпоративный стандарт и под 1С выделяют схему на общем сервере.
IBM Db2 — похожая история: корпоративные инфраструктуры, где эта СУБД уже есть. Новые проекты на ней почти не запускают.
Если вы получили в поддержку базу на Oracle или Db2, первым делом проверьте, поддерживает ли нужная вам версия платформы установленную версию СУБД. Обновить платформу «на свежую» без этой проверки нельзя.
Как выбрать СУБД для 1С: порядок рассуждений
Начинайте не с СУБД, а с нагрузки и инфраструктуры. Последовательность такая.
- Посчитайте одновременных пользователей. Не всего сотрудников, а тех, кто работает в базе в пиковый час. До 3–5 — файловый режим, больше — клиент-сервер.
- Оцените объём базы и рост. Текущий размер плюс прирост за год. Базе, которая через год превысит 10 ГБ, не подходит MS SQL Express.
- Выберите операционную систему сервера. Windows — подходят и MS SQL, и PostgreSQL. Linux — практически только PostgreSQL (или Postgres Pro).
- Проверьте требования к ПО. Госзаказчики и компании с требованием отечественного ПО выбирают Postgres Pro или сборку PostgreSQL на российском Linux.
- Учтите компетенции. Если у вас есть администратор, хорошо знающий MS SQL, и уже купленные лицензии — менять СУБД ради моды смысла мало.
- Заложите бюджет. Лицензия на сервер 1С нужна в любом клиент-серверном варианте. СУБД добавляет к ней от нуля (PostgreSQL) до очень крупных сумм (Oracle Enterprise).
Перенос базы 1С между СУБД: пошагово
Переход «файл → SQL», «MS SQL → PostgreSQL» или обратно делают одним способом — через выгрузку в файл .dt. Прямой конвертации между СУБД средствами 1С нет, и копировать таблицы инструментами самой СУБД нельзя.
На время выгрузки работу пользователей нужно остановить: данные, введённые после выгрузки, в новую базу не попадут. Планируйте перенос на вечер или выходной и предупредите всех заранее.
- Сделайте резервную копию исходной базы средствами СУБД или копией каталога файловой базы.
- Проверьте базу. В конфигураторе запустите
Администрирование → Тестирование и исправление(для этого нужен монопольный режим). Ошибки в исходной базе перенесутся и в новую или сорвут загрузку. - Выгрузите базу.
Конфигуратор → Администрирование → Выгрузить информационную базу, сохраните файл.dt. - Создайте пустую базу на сервере. В окне запуска 1С:
Добавить → Создание новой информационной базы → Создание информационной базы без конфигурации, вариант «На сервере 1С:Предприятия». Укажите кластер, имя базы, тип СУБД, сервер баз данных, имя базы в СУБД и пользователя СУБД, отметьте создание базы данных в случае её отсутствия. То же можно сделать в консоли кластера. - Загрузите данные. Откройте новую базу в конфигураторе:
Администрирование → Загрузить информационную базу, выберите файл.dt. - Проверьте результат. Запустите базу в режиме 1С:Предприятие, сверьте остатки и обороты по ключевым счетам за последний период, сформируйте тяжёлые отчёты, проверьте обмены и регламентные задания.
- Переключите пользователей. Замените базу в списке у пользователей, старую переведите в режим только для чтения или уберите из списка, чтобы в неё больше никто не писал.
💡 Выгрузка в .dt для базы на десятки гигабайт идёт часами. Сделайте пробный перенос на тестовую базу: так вы узнаете реальное время и найдёте проблемы до «боевой» ночи.
Типичные ошибки при выборе и настройке СУБД
- ❌ Ставят ванильный PostgreSQL из репозитория. База не создаётся или не работает : нужна сборка с доработками для 1С.
- ❌ Не ограничивают память MS SQL. СУБД и сервер 1С на одной машине дерутся за память, начинаются падения рабочих процессов.
- ❌ Модель восстановления Full без бэкапа журнала. Через несколько месяцев файл журнала занимает весь диск, и база останавливается.
- ❌ Не обслуживают статистику и индексы. База «медленно деградирует», хотя железо не менялось.
- ❌ Переходят на клиент-сервер без лицензии на сервер 1С. Пользовательских лицензий для этого недостаточно.
- ❌ Не проверяют совместимость версий. Новая версия СУБД, не указанная в требованиях к платформе, может не работать или работать с ошибками.
- ❌ Не проверяют восстановление из бэкапа. Копия, которую ни разу не разворачивали, — это надежда, а не резервная копия.