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