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

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

Как выглядят базы 1С: устройство, файлы и структура хранения

Как устроены базы 1С изнутри: файловый и клиент-серверный варианты, файл 1Cv8.1CD, таблицы SQL, журнал регистрации, способы найти и проверить базу.

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

База 1С может существовать в двух принципиально разных формах: файловой (вся информация хранится в одном большом файле в папке) и клиент-серверной (данные лежат в СУБД — Microsoft SQL Server, PostgreSQL, Oracle или IBM Db2). Внешне это совершенно разные объекты: в первом случае — каталог с файлом 1Cv8.1CD, во втором — набор таблиц внутри системы управления базами данных, к которой платформа обращается через сервер 1С.

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

Файловая база: что лежит в папке

Файловый вариант — самый наглядный. База представляет собой обычный каталог на диске, который можно открыть в проводнике. Главный объект внутри — файл 1Cv8.1CD. Это контейнер собственного формата 1С, внутри которого последовательно хранятся все данные: конфигурация, таблицы документов и справочников, регистры, настройки пользователей. Размер файла у рабочей базы обычно составляет от сотен мегабайт до нескольких гигабайт.

Кроме основного файла в папке обычно присутствуют служебные объекты. Каталог 1Cv8Log содержит журнал регистрации — файлы формата lgp и lgd, где фиксируются действия пользователей и системные события. Встречаются также папки с временными файлами полнотекстового поиска и другие служебные данные. Удалять эти каталоги вручную без понимания последствий не стоит: журнал регистрации, например, нужен для расследования инцидентов.

Файловую базу можно скопировать простым копированием папки — но только когда с ней никто не работает. Если скопировать файл 1Cv8.1CD в момент активной работы пользователей, копия почти гарантированно окажется повреждённой или несогласованной. Для регулярного резервного копирования правильнее использовать выгрузку через конфигуратор (файл .dt) или копирование в нерабочее время.

Клиент-серверная база: таблицы внутри СУБД

В клиент-серверном варианте на диске компьютера пользователя нет ничего похожего на базу. Данные хранятся внутри СУБД — например, Microsoft SQL Server. Если открыть Management Studio, база 1С выглядит как список таблиц с техническими именами: _Document, _Reference, _AccumRg, _InfoRg и другие, с числовыми суффиксами. Эти имена генерирует платформа, и соответствие между ними и знакомыми объектами («Номенклатура», «Реализация товаров») зашито во внутренних структурах.

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

Резервное копирование клиент-серверной базы делается средствами самой СУБД (backup в SQL Server, pg_dump в PostgreSQL) либо выгрузкой .dt через конфигуратор. Копирование файлов данных СУБД вручную без остановки службы — типичная ошибка, приводящая к нерабочим копиям.

Как найти, где физически расположена база

Самый простой способ узнать, как выглядит и где лежит конкретная база, — открыть окно запуска 1С (список информационных баз). Выделите базу и нажмите кнопку настройки: в параметрах будет указан тип расположения. Для файловой базы там будет путь к каталогу, для серверной — имя сервера 1С и имя базы в кластере.

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

Как определить расположение базы
  1. 1
    Откройте окно запуска 1С со списком информационных баз.
  2. 2
    Выделите нужную базу и нажмите кнопку настройки (шестерёнка или «Изменить»).
  3. 3
    Посмотрите тип расположения: «На данном компьютере или в локальной сети» — файловая база, «На сервере 1С» — клиент-серверная.
  4. 4
    Для файловой базы скопируйте указанный путь и откройте его в проводнике — вы увидите файл 1Cv8.1CD.
  5. 5
    Для серверной базы уточните у администратора имя SQL-сервера и базы данных в консоли кластера.

Что находится внутри базы: логическая структура

Независимо от варианта хранения внутри базы живут одни и те же логические объекты. Справочники хранят нормативную информацию: контрагентов, товары, сотрудников. Документы фиксируют хозяйственные операции — каждая накладная или приказ это строка в таблице документов плюс связанные движения. Регистры (накопления, сведений, бухгалтерии) содержат итоговые и аналитические данные, которые документы формируют при проведении.

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

Файловый и клиент-серверный варианты

Файловая база

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

Клиент-серверная база

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

Как безопасно посмотреть и проверить базу

Для визуального знакомства со структурой базы безопаснее всего использовать конфигуратор. В режиме конфигуратора видно дерево объектов метаданных: все справочники, документы, регистры с их реквизитами. Это «карта» базы, которая показывает, какие данные в ней вообще могут существовать. Открытие конфигуратора в режиме только просмотра не меняет данные.

Для проверки физической целостности файловой базы существует утилита chdbfl.exe из каталога платформы и штатный механизм «Тестирование и исправление» в конфигураторе. Перед любым таким запуском обязательно сделайте копию базы: режимы исправления могут удалять повреждённые записи. Для клиент-серверной базы аналогичные проверки выполняются средствами СУБД и конфигуратора.

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

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

Открытие базы в режиме предприятия
Норма

База открывается без сообщений об ошибках, списки документов загружаются

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

Ошибки формата потока, сообщения о повреждении, аварийное завершение

Размер файла 1Cv8.1CD
Норма

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

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

Резкий скачок размера без причины или файл нулевого размера

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

Записи ведутся, ошибок с пометкой критичности нет

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

Массовые ошибки записи данных, сообщения о нарушении целостности

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

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

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

Отдельная ошибка — путать выгрузку .dt и копию файла базы. Файл .dt — это переносимый архив, который разворачивается через конфигуратор; он не заменяет папку базы и не открывается двойным щелчком. И наоборот: просто скопированная папка файловой базы — это полноценная база, которую можно подключить в списке баз, но делать такую копию нужно только при закрытых сеансах.

Часто задаваемые вопросы

Можно ли открыть файл 1Cv8.1CD без 1С?

Нет. Это закрытый формат платформы: содержимое читается только средствами 1С (конфигуратор, режим предприятия, утилита chdbfl для проверки). Текстовые и универсальные просмотрщики покажут лишь двоичные данные.

Почему база занимает много места, хотя документов немного?

Кроме документов в базе хранятся регистры, индексы, журнал регистрации, настройки и сама конфигурация. Также при удалении объектов место внутри файла не всегда освобождается автоматически — помогает тестирование и исправление с реструктуризацией или выгрузка и загрузка через .dt.

Как понять, файловая у меня база или серверная?

Откройте список информационных баз в окне запуска 1С, выделите базу и посмотрите параметры. Если указан путь к папке на диске — база файловая. Если указан сервер 1С и имя базы в кластере — клиент-серверная.

Безопасно ли хранить файловую базу на сетевом диске?

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

Чем выгрузка .dt отличается от копии папки базы?

Файл .dt — это логическая выгрузка через конфигуратор: её можно загрузить в базу на другом компьютере или в другой вариант хранения. Копия папки — побайтовый снимок, пригодный только для файлового режима и только при условии, что во время копирования с базой никто не работал.

Можно ли перенести файловую базу на SQL-сервер?

Да. Стандартный путь: выгрузить базу в файл .dt через конфигуратор, создать пустую базу в кластере серверов 1С и загрузить в неё выгрузку. Данные и конфигурация переносятся полностью, меняется только способ хранения.

Итог

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

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