К статье
Практический материал

Администрирование · 12 мин

Как работает база 1С: устройство, режимы и обслуживание

Как устроена и работает база 1С: файловый и клиент-серверный режимы, структура данных, кэш, журнал регистрации, типичные проблемы и их диагностика.

База 1С — это не один файл и не просто «папка с данными», а связка из трёх компонентов: платформы 1С:Предприятие, конфигурации (прикладного решения вроде «Бухгалтерии» или «Управления торговлей») и собственно данных — справочников, документов, регистров. Платформа исполняет код конфигурации и преобразует операции пользователя в записи в хранилище: либо в файл 1Cv8.1CD, либо в таблицы СУБД (MS SQL Server, PostgreSQL и др.). Понимание этой трёхслойной модели — ключ к диагностике большинства проблем: медленной работы, ошибок блокировок, повреждений данных.

Когда бухгалтер проводит документ, платформа не «дописывает строчку в файл», а выполняет транзакцию: изменяет таблицы регистров, пересчитывает итоги, фиксирует изменение в журнале регистрации. В файловом режиме всё это происходит внутри одного файла с собственным форматом страниц; в клиент-серверном — команды транслируются в SQL-запросы, а транзакциями управляет СУБД. Отсюда и различия в надёжности, скорости и требованиях к обслуживанию.

Из чего состоит база 1С

Файловая база — это каталог, в котором главную роль играет файл 1Cv8.1CD: в нём лежат и описание структуры конфигурации, и все данные. Рядом находятся служебные файлы: журнал регистрации (1Cv8Log в старом формате или каталог 1Cv8Log в новом — формате LGD/LGP), файлы блокировок и временные данные. Размер файла растёт по мере накопления документов, и при объёме в несколько гигабайт файловый режим начинает «тормозить» даже на быстром диске.

В клиент-серверном варианте данные распределены по таблицам СУБД: справочники, документы, регистры сведений и накопления — каждый объект конфигурации получает свою таблицу с системным именем. Между пользователями и СУБД стоит сервер 1С:Предприятия, который выполняет код, управляет сеансами и кэширует данные. Конфигурация при этом хранится в той же базе СУБД — в специальных таблицах.

Файловый и клиент-серверный режимы: как выбрать

Файловый режим подходит для одного пользователя или небольшой группы (обычно до 5–10 одновременно работающих) при умеренном объёме данных. Его плюсы: простота развёртывания, лёгкое копирование базы обычным копированием каталога, отсутствие затрат на СУБД. Минусы: вся база при работе по сети гоняется по сетевому диску, блокировки захватывают крупные участки данных, а риск повреждения файла при обрыве сети или питания заметно выше.

Клиент-серверный режим нужен, когда пользователей много, база велика, а требования к отказоустойчивости высоки. СУБД обеспечивает постраничные блокировки, фоновое обслуживание, журналирование транзакций и штатные средства резервного копирования. Цена вопроса — необходимость администрировать сервер 1С и саму СУБД: следить за местом на дисках, планами обслуживания, статистикой индексов.

Сравнение режимов работы

Файловый режим

Для 1–10 пользователей и базы умеренного размера. Ограничение: чувствителен к обрывам сети, блокировки грубые, рост файла резко снижает скорость.

Клиент-серверный (MS SQL / PostgreSQL)

Для десятков и сотен пользователей, больших объёмов и круглосуточной работы. Ограничение: требует администратора СУБД и сервера 1С, стоит дороже в развёртывании.

Как платформа выполняет операции с данными

Любое изменение данных — проведение документа, запись элемента справочника — оформляется транзакцией. Пока транзакция не завершена, изменения видны только инициатору; после фиксации они становятся постоянными. Если в середине операции произошла ошибка, транзакция откатывается целиком: база не остаётся в «полупроведённом» состоянии. Это фундамент целостности учёта.

Параллельная работа регулируется блокировками. Платформа использует управляемые блокировки: объектные (на конкретные записи) и транзакционные, которые в клиент-серверном режиме транслируются в блокировки СУБД. Когда два пользователя одновременно меняют пересекающиеся данные, второй получает ошибку «Конфликт блокировок» или ждёт освобождения ресурса. Частые конфликты — признак того, что процессы стоит развести по времени или пересмотреть логику доработок.

Кэш, сеансы и почему «помогает перезапуск»

Платформа агрессивно кэширует метаданные и настройки, чтобы не читать структуру конфигурации при каждом обращении. Клиентский кэш лежит в профиле пользователя (каталоги вида %APPDATA%\1C\1cv8 с папками из букв и цифр), серверный — в каталоге srvinfo сервера 1С (подкаталоги reg_1541 и аналогичные). После обновления конфигурации устаревший кэш иногда вызывает странные ошибки: «Ошибка формата потока», несовпадение версий, внезапные вылеты у отдельных пользователей.

Сеанс — это подключение пользователя или фонового задания к базе. Список сеансов виден в консоли кластера серверов или через функциональность «Активные пользователи» в типовых конфигурациях. «Зависшие» сеансы держат блокировки и лицензии, поэтому администратору важно уметь их завершать. Перезапуск сервера 1С очищает сеансы и часть кэша — отсюда народный метод «перезагрузить и пройдёт», который действительно снимает симптом, но не лечит причину.

Как очистить клиентский кэш 1С
  1. 1
    Закройте все сеансы 1С у проблемного пользователя.
  2. 2
    Откройте каталог %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8.
  3. 3
    Найдите папку с именем из букв и цифр, соответствующую базе (проще всего — удалить базу из списка в стартере и добавить заново: кэш пересоздастся).
  4. 4
    Удалите папку кэша этой базы.
  5. 5
    Запустите базу и проверьте, исчезла ли ошибка.

Журнал регистрации и диагностика событий

Журнал регистрации фиксирует действия пользователей, ошибки, запуск фоновых заданий, изменения данных (если настроен уровень детализации). В файловом режиме он хранится рядом с базой, в клиент-серверном — в каталоге сервера. Со временем журнал разрастается, и старые версии формата (один файл 1Cv8.lgf) заметно замедляли работу при больших объёмах; новый формат (LGD) хранит журнал сегментами и лишён этого недостатка.

Практическое применение: при жалобе «кто-то удалил документ» или «база выдала ошибку в 14:30» первым делом открывают журнал (в конфигураторе: Администрирование → Журнал регистрации) и фильтруют по времени, пользователю и уровню «Ошибка». Журнал также можно выгрузить и настроить его ротацию, чтобы он не занимал весь диск.

Обслуживание: проверка целостности и резервные копии

Физическую целостность файловой базы проверяет утилита chdbfl.exe из каталога платформы (подкаталог bin). Она проверяет структуру страниц файла 1Cv8.1CD и может исправлять ошибки на низком уровне. Логическую целостность — соответствие данных и индексов — проверяет «Тестирование и исправление» в конфигураторе с включёнными режимами реиндексации и проверки ссылочной целостности. Обе процедуры выполняются только при монопольном доступе, то есть все пользователи должны выйти.

Резервное копирование различается по режимам. Файловую базу допустимо копировать на уровне файлов, но только когда с ней никто не работает, иначе копия может оказаться битой; надёжнее — выгрузка в dt через конфигуратор. Клиент-серверную базу копируют средствами СУБД (backup в MS SQL, pg_dump в PostgreSQL) — это даёт целостный снимок на горячую. Выгрузка в dt удобна для переноса, но не заменяет регулярный бэкап: она медленнее и требовательнее к ресурсам.

Типичные ошибки администрирования
01
Копирование файловой базы «на живую» при открытых сеансах — копия получается рассогласованной и может не открыться.
02
Хранение файловой базы на сетевом диске с нестабильной сетью — обрывы при записи ведут к повреждению 1Cv8.1CD.
03
Игнорирование роста журнала регистрации и файла базы — диск переполняется, и СУБД или платформа останавливаются аварийно.
04
Запуск тестирования и исправления без монопольного режима и бэкапа — риск усугубить повреждения.
05
Перенос рабочей нагрузки на файловый режим при росте числа пользователей — массовые конфликты блокировок и падение скорости.

Типичные проблемы и признаки неисправности

Медленная работа файловой базы чаще всего связана с размером файла, фрагментацией индексов и антивирусом, сканирующим 1Cv8.1CD при каждом обращении. Проверьте: добавлена ли папка базы в исключения антивируса, есть ли свободное место на диске, помогает ли реиндексация. В клиент-серверном режиме причину ищут глубже: долгие запросы, отсутствие индексов под нестандартные доработки, нехватка памяти сервера СУБД.

Ошибки формата потока, «битые» ссылки (объект не найден), расхождения итогов по регистрам — симптомы разного уровня. Первое часто лечится очисткой кэша, второе — восстановлением ссылочной целостности, третье — пересчётом итогов в режиме «Тестирование и исправление» или штатной операцией пересчёта в конфигурации. Каждый симптом стоит фиксировать с текстом ошибки и временем — это ускоряет поиск в журнале регистрации.

Контрольные точки

Как проверить состояние базы

Свободное место на диске с базой и журналом
Норма

Запас места существенно больше размера базы

Тревожный признак

Диск почти заполнен — риск аварийной остановки записи

Журнал регистрации за сутки
Норма

Единичные ошибки, объяснимые действиями пользователей

Тревожный признак

Повторяющиеся ошибки блокировок, обрывов соединения, фоновых заданий

Скорость типовых операций (проведение, отчёты)
Норма

Время отклика стабильно день ко дню

Тревожный признак

Резкое замедление без роста объёма данных

Тестирование и исправление (плановое, с копией)
Норма

Проверка завершается без ошибок

Тревожный признак

Ошибки физической целостности или битые ссылки

Маршрут решения

Как выбрать действие

Ошибка формата потока у одного пользователяОчистите клиентский кэш этой базы у пользователя и проверьте повторно
Ошибки у всех пользователей после обновления конфигурацииПроверьте завершение обновления метаданных и при необходимости очистите серверный кэш
Файловая база не открывается, ошибка чтения файлаСкопируйте 1Cv8.1CD в резервное место, затем прогоните chdbfl с проверкой без исправлений
Постоянные конфликты блокировок при 15+ пользователях в файловом режимеПланируйте переход на клиент-серверный режим — файловый исчерпал свои возможности
База растёт и тормозит, журнал огромныйНастройте сокращение журнала регистрации и выполните реиндексацию

FAQ: частые вопросы о работе базы 1С

Можно ли просто скопировать папку с базой на другой компьютер?

Для файловой базы — да, при условии, что все сеансы закрыты: копируйте весь каталог целиком и переносите. Для клиент-серверной базы простое копирование файлов СУБД не работает корректно — используйте штатный backup/restore СУБД или выгрузку в dt через конфигуратор.

Чем отличается выгрузка в dt от резервной копии СУБД?

Выгрузка в dt — логический снимок средствами платформы, удобный для переноса между режимами и версиями. Backup СУБД — физическая копия, которая делается быстрее, «на горячую» и восстанавливается предсказуемее. Для регулярной защиты данных в клиент-серверном режиме правильнее использовать средства СУБД, а dt держать как дополнительный инструмент миграции.

Почему база «весит» всё больше, хотя документов добавляется немного?

Файл 1Cv8.1CD не уменьшается при удалении данных сам по себе: освобождённые страницы остаются внутри файла. Также растут журнал регистрации, таблицы итогов и служебные данные. Сократить физический размер помогает выгрузка и загрузка через dt или штатное сжатие таблиц в СУБД для клиент-серверного режима.

Опасно ли прерывать зависшее проведение документа?

Завершение сеанса на стороне клиента обычно безопасно: незавершённая транзакция откатится, и данные останутся целостными. Опасно другое — выключать компьютер или рвать сеть в момент записи файловой базы, а также принудительно останавливать сервер СУБД. Если документ «висит» из-за блокировки, сначала найдите и завершите блокирующий сеанс.

Как понять, что пора переходить с файлового режима на клиент-серверный?

Тревожные признаки: более десятка активных пользователей, регулярные конфликты блокировок, файл базы в несколько гигабайт, жалобы на скорость при одновременной работе, необходимость круглосуточного доступа и горячего резервного копирования. Один-два пункта из списка — уже повод планировать миграцию.

Что делать при ошибке «Объект не найден» в документе?

Это «битая ссылка»: запись ссылается на удалённый или повреждённый объект. Зафиксируйте текст ошибки, сделайте копию базы и запустите «Тестирование и исправление» с проверкой ссылочной целостности — платформа предложит варианты обработки таких ссылок. После исправления проверьте связанные отчёты и итоги.

Итог

Что важно запомнить

База 1С = платформа + конфигурация + данные, хранимые в файле 1Cv8.1CD или в СУБД. Все изменения идут транзакциями под защитой блокировок. Ключевые навыки администратора: регулярные резервные копии, контроль журнала регистрации и диска, очистка кэша при странных ошибках, проверка целостности только с копией и в монопольном режиме.