← На главную
При активной работе розничного магазина размер файла информационной базы 1Cv8.1CD со временем неизбежно увеличивается. Когда объем превышает 5 Гб, закономерно возникает вопрос: нужно ли срочно приобретать лицензии и переходить на полноценный клиент-серверный режим (MS SQL Server или PostgreSQL), или информационная база способна стабильно функционировать в файловом режиме? Рассмотрим этот вопрос детально, проанализируем реальные ограничения платформы «1С:Предприятие» и разберем пошаговые сценарии оптимизации объема базы данных.
Ограничения файлового формата 1CD: где кроется реальная опасность
Существует распространенное заблуждение, что файловая база 1С не может превышать 4 Гб целиком. На самом деле это ограничение касается не общего размера файла 1Cv8.1CD, а размера одной внутренней таблицы базы данных (включая связанные индексы и данные неограниченной длины BLOB). Таким образом, база может весить 5,5 Гб, 10 Гб и более, если ни одна из ее внутренних таблиц не преодолела критический порог.
Разберем основные технические нюансы работы формата 1CD:
- Стандартный размер страницы (4 Кб). Исторически в файловых базах размер страницы составляет 4096 байт, что и задает физический предел в 4 Гб на одну таблицу. При приближении размера любой таблицы к этой отметке платформа выдает критическую ошибку превышения лимита.
- Утилита cnvdbfl.exe. Начиная с версии платформы 8.3.8, появилось штатное решение. В каталоге установки платформы (папка
bin) находится утилита cnvdbfl.exe, позволяющая изменить размер страницы до 8, 16, 32 или 64 Кб. Увеличение размера страницы пропорционально отодвигает лимит на размер отдельной таблицы вплоть до 64 Гб.
- Количество пользователей и сетевая стабильность. Главным фактором риска для файловой базы является не столько сам объем данных, сколько способ подключения и число одновременно работающих пользователей. Прямой доступ к файлу базы через сетевую папку Windows (протокол SMB) при объеме более 5 Гб резко увеличивает риск повреждения структуры данных при малейшем сетевом сбое на клиентской машине.
Шаг 1. Анализируем структуру и размер внутренних таблиц
Прежде чем принимать решение о покупке оборудования или лицензий на СУБД, выясним причину разрастания базы. Для этого определим, какие именно таблицы занимают больше всего дискового пространства.
Для диагностики используем специализированную обработку — например, TableSizes.epf (доступна на диске ИТС) или аналогичные инструменты анализа структуры 1CD. Запустим обработку в режиме «1С:Предприятие» и посмотрим на распределение места. Чаще всего лидерами по объему оказываются:
- Таблицы присоединенных файлов (сканы документов, сертификаты, фотографии номенклатуры).
- Регистр сведений версионирования объектов (история изменений).
- Таблицы адресного классификатора (ФИАС / ГАР).
- Регистры накопления и документов за прошлые периоды.
- Таблицы регистрации изменений планов обмена (РИБ или синхронизация с бухгалторией).
Шаг 2. Устраняем скрытые причины раздувания базы
Разберем по шагам, как уменьшить объем базы без удаления актуальных учетных данных:
- Вынос присоединенных файлов на диск. Если в конфигурации «1С:Розница» ведется учет картинок товаров или сканов накладных, переключим их хранение. В разделе администрирования («Работа с файлами») настроим Тома хранения файлов на локальном или сетевом диске. После переноса файлы будут храниться в файловой системе сервера, а в самой базе останутся только ссылки.
- Очистка истории версий объектов. Если включено версионирование, регистр
ВерсииОбъектов может занимать гигабайты. Настроим регламентное задание по очистке устаревших версий или воспользуемся штатной кнопкой удаления версий старше определенного срока (например, старше 3–6 месяцев).
- Оптимизация адресного классификатора. Загруженные целиком адресные сведения регионов многократно раздувают таблицы. В современных версиях рекомендуется очистить загруженные адресные базы и включить работу с классификатором через веб-сервис интернет-поддержки онлайн.
- Очистка «зависших» очередей обмена. Проверим узлы планов обмена. Если узел распределенной информационной базы или обмена с сайтом/бухгалтерией перестал принимать данные, таблица изменений непрерывно накапливает регистрацию всех документов. Удалим неактуальные регистрации через меню «Регистрация изменений для обмена».
- Очистка индекса полнотекстового поиска. В настройках программы очистим и заново сформируем индекс полнотекстового поиска, который со временем может некорректно фрагментироваться.
Шаг 3. Сжатие таблиц информационной базы
Важно помнить: при удалении записей из базы 1С физический размер файла 1Cv8.1CD на диске автоматически не уменьшается. Чтобы освободить выделенное пространство, выполним регламентную процедуру сжатия.
- Создадим резервную копию информационной базы (выгрузка в файл
.dt или прямое копирование файла 1Cv8.1CD при закрытых сеансах).
- Запустим программу в режиме Конфигуратор.
- Перейдем в главное меню: Администрирование -> Тестирование и исправление...
- Установим флажок на пункте Сжатие таблиц информационной базы (остальные проверки можно отключить для ускорения процесса) и нажмем «Выполнить».
После завершения сжатия файл базы существенно уменьшится за счет высвобождения неиспользуемых страниц.
Шаг 4. Свертка информационной базы за прошлые периоды
Если «1С:Розница» эксплуатируется несколько лет, самым эффективным решением для сохранения файлового режима является свертка. Суть процедуры: фиксация остатков на начало выбранного года и удаление движений и документов за закрытые прошлые периоды.
Разберем регламент проведения свертки:
- Формирование архивной копии. Полная копия текущей базы обязательно сохраняется как архив за прошлые годы — она всегда будет доступна бухгалтеру или руководству для формирования исторических отчетов.
- Запуск штатной обработки. В типовой конфигурации «1С:Розница» присутствует встроенный мастер («Администрирование» -> «Обслуживание» -> «Свертка информационной базы») либо используется универсальная обработка «Свертка базы» с диска ИТС.
- Формирование остатков. Обработка рассчитывает остатки товаров, денежных средств и взаиморасчетов на указанную дату, формирует документы ввода начальных остатков и очищает движения старых документов.
- Окончательное удаление помеченных объектов и сжатие. После пометки на удаление старых чеков и накладных выполним штатное удаление помеченных объектов, после чего повторим тестирование и исправление с операцией «Сжатие таблиц».
Архитектурные альтернативы полноценному серверу MS SQL
Если после чистки и свертки база все еще велика, либо требуется надежная многопользовательская работа, не обязательно сразу приобретать дорогостоящий Microsoft SQL Server. Проанализируем более доступные и надежные альтернативы:
- Публикация файловой базы на веб-сервере (Apache или IIS). Это позволяет оставить базу файловой, но полностью отказаться от опасного протокола SMB (общих папок). Клиенты подключаются по протоколу HTTP/HTTPS через тонкий клиент. Блокировками файла и кэшированием в этом случае управляет веб-сервер, что исключает разрушение базы при обрыве связи у пользователя на кассе.
- Терминальный доступ (RDP). Запуск клиентов на том же физическом компьютере, где расположен файл базы, защищает от сетевых разрывов.
- Переход на бесплатную СУБД PostgreSQL. Фирмой «1С» предоставляются готовые адаптированные сборки СУБД PostgreSQL, распространяемые бесплатно.
- Использование лицензии «1С:Сервер МИНИ». Для небольшого магазина с числом пользователей не более 5 подключений доступна недорогая официальная лицензия «1С:Предприятие 8.3. Сервер МИНИ». Она позволяет полноценно работать в трехзвенной архитектуре «Клиент — Сервер 1С — СУБД», гарантируя стабильность без необходимости покупки дорогой серверной лицензии enterprise-уровня.