Какую информационную базу 1С выбрать: файл на диске или сервер с СУБД
Содержание
Базы данных 1С 8.3 бывают двух видов: файловые (вся информационная база лежит в одном файле 1Cv8.1CD в папке на диске) и клиент-серверные (данные хранятся в СУБД — MS SQL Server, PostgreSQL, IBM Db2 или Oracle, а работой управляет сервер 1С:Предприятия). Третий вариант — публикация на веб-сервере — отдельным видом хранения не является: это способ доступа к файловой или серверной базе через браузер или тонкий клиент по HTTP.
Частое заблуждение: «SQL-база — это другая программа 1С». Нет. Конфигурация, документы, отчёты и интерфейс одинаковы в обоих вариантах. Отличаются только режим работы платформы, способ хранения данных, производительность при многих пользователях и требования к лицензиям и железу. Одну и ту же базу можно перенести из файла на сервер и обратно без потери данных.
Файловая информационная база: как устроена и когда её хватает
Файловая база — это каталог, в котором лежит файл 1Cv8.1CD. В нём хранятся конфигурация, все данные и служебные таблицы. Рядом платформа создаёт свои служебные файлы и папки:
- 📄
1Cv8.1CD— сама база; - 🔒
1Cv8.1CL— файл блокировок, появляется при открытой базе; - 🔎
1Cv8FTxt— индекс полнотекстового поиска; - 📁
1Cv8Log— журнал регистрации.
Отдельного сервера нет. Каждый клиент, открывший базу, сам читает и пишет файл через свою копию «файлового движка» платформы. Если база лежит в сетевой папке, все пользователи работают с одним файлом по сети.
Где файловый вариант уместен
- 👤 один-три пользователя: ИП, небольшая бухгалтерия, учёт на одном компьютере;
- 🧪 тестовые и учебные копии, демобазы, копии для проверки обновлений;
- 💻 работа на ноутбуке без сети;
- 📦 база, которую регулярно нужно отправлять целиком (копия папки — и база у адресата).
Слабые места
- 🐢 Чем больше одновременных пользователей и тяжелее операции (закрытие месяца , перепроведение), тем сильнее тормоза. На практике при 5-10 активных пользователях по сети работа становится заметно медленнее.
- 💥 Сбой сети или питания в момент записи может повредить файл. Такую базу проверяют утилитой
chdbfl.exeиз каталогаbinплатформы или режимом «Тестирование и исправление» в Конфигураторе. - 🔐 Доступ к папке даёт доступ ко всем данным: скопировал файл — унёс базу. Пароли пользователей 1С от этого не спасают.
Не размещайте файловую базу в папке, которую синхронизирует облачный диск (Яндекс Диск, OneDrive и подобные). Синхронизация при открытой базе — частая причина повреждения 1Cv8.1CD.
Клиент-серверная база 1С на СУБД
В клиент-серверном варианте участвуют три звена:
- Клиент — тонкий, толстый или веб-клиент на рабочем месте пользователя.
- Сервер 1С:Предприятия — служба на сервере. Она выполняет запросы, проведение, формирование отчётов, фоновые и регламентные задания.
- СУБД — сервер баз данных, где физически хранятся таблицы.
Клиент обращается к агенту сервера (по умолчанию порт 1540), агент передаёт его менеджеру кластера (1541), а дальше клиент работает с рабочими процессами. Их диапазон портов задаётся в свойствах рабочего сервера, по умолчанию 1560-1591. Если между пользователями и сервером стоит межсетевой экран, открывать нужно весь этот набор.
Какие СУБД поддерживает платформа 8.3
| СУБД | Стоимость | Где чаще встречается |
|---|---|---|
| Microsoft SQL Server | Платная; редакция Express бесплатна, но ограничена 10 ГБ на базу | Исторически самый распространённый вариант в Windows-инфраструктуре |
| PostgreSQL (сборки для 1С, Postgres Pro) | Бесплатна или по лицензии Postgres Pro | Новые внедрения, импортозамещение, серверы на Linux |
| IBM Db2 | Платная | Редко, в крупных компаниях |
| Oracle Database | Платная | Редко, в крупных компаниях |
Обычный PostgreSQL «из коробки» для 1С не подходит: нужна сборка с патчами под платформу. Её выпускает фирма «1С», также подходят дистрибутивы Postgres Pro.
Что даёт серверный вариант
- ⚡ Тяжёлая работа идёт на сервере, а не на компьютере пользователя. Отчёт по большой базе формируется на мощном железе.
- 👥 Десятки и сотни одновременных пользователей без деградации, характерной для файла.
- 🛡️ Резервное копирование средствами СУБД, в том числе без выгона пользователей, плюс модели восстановления и журналы транзакций.
- 🔑 Пользователи не видят файлов базы: доступ к данным только через сервер 1С.
- ⚙️ Регламентные задания выполняются на сервере по расписанию, даже если никто не запустил программу.
Платой за это становятся лицензия на сервер 1С, лицензия СУБД (кроме PostgreSQL), отдельная машина и администратор, который это обслуживает.
Режимы запуска 1С: файловый и клиент-серверный в окне выбора баз
Режим работы определяется не программой, а строкой подключения базы в списке запуска. При добавлении базы кнопкой «Добавить» в окне запуска 1С платформа спрашивает, где она расположена:
- «На данном компьютере или на компьютере в локальной сети» — файловый режим. Указываете путь к каталогу с
1Cv8.1CD. - «На сервере 1С:Предприятия» — клиент-серверный режим. Указываете имя кластера серверов и имя информационной базы в кластере.
- «На веб-сервере» — доступ по адресу публикации, например
https://server/buh. За публикацией может стоять как файловая, так и серверная база.
Тип базы видно и без настроек: выделите базу в списке, внизу окна отображается строка подключения. File="D:\Bases\Buh" — файловая, Srvr="srv1c";Ref="buh" — серверная, ws="https://..." — через веб-сервер.
Запуск из командной строки
Тот же выбор делают параметры командной строки 1cestart.exe и 1cv8.exe. Для файловой базы — /F, для серверной — /S:
rem Файловая база, режим Предприятия
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F "D:\Bases\Buh"
rem Серверная база, режим Конфигуратора
"C:\Program Files\1cv8\common\1cestart.exe" DESIGNER /S "srv1c\buh" /N "Администратор" /P "пароль"
ENTERPRISE и DESIGNER — это уже второй, независимый смысл слова «режим»: работа пользователя или Конфигуратор. Оба доступны и в файловом, и в клиент-серверном варианте.
Не храните пароль в ярлыке открытым текстом на общих компьютерах. Для автоматических задач заведите отдельного пользователя 1С с минимальными правами.
Сравнение типов баз данных 1С по ключевым параметрам
| Параметр | Файловая | Клиент-серверная |
|---|---|---|
| Где хранятся данные | Файл 1Cv8.1CD | Таблицы в СУБД |
| Кто обрабатывает запросы | Клиент на каждом компьютере | Рабочие процессы сервера 1С |
| Комфортное число пользователей | 1-5, при аккуратной сети чуть больше | От единиц до сотен |
| Лицензии | Клиентские | Клиентские + лицензия сервера 1С + лицензия СУБД (если платная) |
| Железо | Достаточно обычного ПК или сетевой папки | Отдельный сервер, желательно на SSD |
| Резервные копии | Копирование папки при закрытой базе или выгрузка .dt | Средства СУБД по расписанию, без остановки работы |
| Безопасность данных | Доступ к папке = доступ к базе | Данные доступны только через сервер |
| Установка и обслуживание | Минуты, без администратора | Нужна настройка сервера, СУБД, прав, резервного копирования |
| Регламентные задания | Выполняются, пока открыт клиент | Выполняются сервером по расписанию |
Как выбрать архитектуру
Распределённые информационные базы и обмен между узлами
Распределённая информационная база (РИБ) — это не отдельный тип хранения, а несколько баз с одной конфигурацией, которые обмениваются изменениями. Есть главный узел и подчинённые. Каждый узел может быть хоть файловым, хоть серверным: например, центральный офис на сервере с PostgreSQL, а склад в другом городе — файловая база на одном компьютере.
Как это работает
- 🔁 Обмен идёт пакетами: узел собирает изменения с прошлой синхронизации и отправляет их через каталог, FTP, почту или интернет.
- 🧩 Изменения конфигурации (обновления, доработки) делаются только в главном узле и сами приходят в подчинённые с очередным обменом.
- 📅 Подчинённый узел после получения нового релиза нужно открыть, чтобы применить изменения структуры.
В типовых конфигурациях (БП 3.0, ЗУП 3.1, УТ 11) РИБ настраивается в разделе Администрирование → Синхронизация данных, где создаётся узел распределённой базы и задаётся транспорт обмена.
Когда распределённая база оправдана
- 🏭 филиал без стабильного канала: работать нужно, даже если связь пропала на день;
- 🚚 выездные сотрудники, которые синхронизируются по возвращении;
- 🔒 удалённая точка, которой не нужны все данные центра (через фильтры отбора по организациям или складам).
Если канал между офисами надёжный, проще дать филиалу доступ к центральной серверной базе через тонкий клиент или веб-публикацию. РИБ требует контроля: застрявший пакет, коллизии при одновременной правке одного объекта и рассинхронизация номеров — типичные заботы администратора.
Перевод базы 1С из файлового режима в клиент-серверный и обратно
Конвертация между видами баз делается через файл выгрузки .dt. Это универсальный формат: его загружает и файловая, и серверная база на любой поддерживаемой СУБД. Тем же способом переходят с MS SQL на PostgreSQL.
Пошагово: файл → сервер
- Сообщите пользователям время работ и попросите всех выйти из базы.
- Откройте файловую базу
в Конфигураторе и выполните
Администрирование → Выгрузить информационную базу. Сохраните файл.dt. - Проверьте, что на сервере установлена та же версия платформы, что используется для базы, или новее.
- Создайте новую базу на сервере 1С: в окне запуска выберите «Добавить» → «Создание новой информационной базы» → «Создание информационной базы без конфигурации» → «На сервере 1С:Предприятия». Укажите кластер, имя базы, тип СУБД, сервер баз данных, имя базы в СУБД и пользователя СУБД. Отметьте «Создать базу данных в случае ее отсутствия».
- Откройте новую пустую базу в Конфигураторе и выполните
Администрирование → Загрузить информационную базу, выбрав сохранённый.dt. - Запустите базу в режиме Предприятия под администратором. Сверьте остатки по ключевым счетам, обороты за последний месяц и список пользователей.
- Перенастройте регламентные задания, обмены и пути к внешним обработкам: в серверной базе они выполняются от имени службы сервера, а у неё свои права к папкам.
- Уберите старую файловую базу из списков запуска пользователей, чтобы никто не продолжил работать в ней. Сам файл сохраните как архив.
Не удаляйте исходную файловую базу, пока не проверите серверную на реальных операциях хотя бы несколько дней.
Обратный путь: сервер → файл
Выгрузите .dt из серверной базы и загрузите в новую пустую файловую базу. Так делают копии для тестирования обновлений, для аудитора или для передачи базы подрядчику.
Загрузка .dt полностью заменяет содержимое базы-приёмника. Загружайте только в новую пустую базу или в ту, которую точно не жалко. Выгрузку и загрузку платформа выполняет в монопольном режиме: все пользователи должны выйти, иначе операция не начнётся.
Если выгрузка .dt падает
Чаще всего виновата повреждённая файловая база. Порядок действий:
- 🛠️ сделайте копию каталога базы при закрытой программе;
- 🔍 запустите на копии
chdbfl.exe, отметьте исправление ошибок и повторите; - 🧰 если не помогло, в Конфигураторе —
Администрирование → Тестирование и исправлениес реструктуризацией таблиц; - 💾 после успешной проверки снова выгрузите
.dt.