Из чего физически состоит информационная база 1С и где лежат её данные

· 9 мин

Содержание

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

Выбор между вариантами простой. Файловый ставят на 1–5 пользователей и для тестовых копий: его легко скопировать и перенести. Клиент-серверный выбирают, когда пользователей больше 10–15, база выросла до десятков гигабайт или нужна надёжная работа по сети. Перевести базу из одного варианта в другой можно в любой момент через выгрузку .dt, так что выбор не окончательный.

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

По умолчанию новая база создаётся в профиле пользователя: C:\Users\<имя>\Documents\InfoBase. Следующие получают имена InfoBase1, InfoBase2 и так далее. Путь можно задать любой — на локальном диске или в сетевой папке.

Чтобы узнать, где лежит ваша база, не нужно искать по диску:

  1. Откройте окно запуска 1С.
  2. Выделите базу в списке — внизу окна появится строка вида File="D:\Bases\Buh".
  3. Либо в уже открытой базе откройте главное меню (кнопка с тремя полосками) → Справка → О программе. В строке каталога указан путь.

Содержимое папки рабочей файловой базы выглядит так:

ОбъектЧто этоМожно удалять?
1Cv8.1CDСама база: данные, конфигурация, пользователиНет — это и есть база
1Cv8.1CLФайл блокировки, появляется во время работыТолько когда в базе никого нет
1Cv8Log\Журнал регистрацииМожно, но потеряете историю действий
1Cv8FTxt\Индекс полнотекстового поискаМожно, индекс перестроится

Если в папке лежит только 1Cv8.1CD — это нормальная, полноценная база. Остальное создаётся автоматически при первом запуске.

Почему один файл, а не много

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

У такого устройства есть и минус. Файл не уменьшается сам: если удалить половину документов, размер на диске останется прежним. Место освобождается только после сжатия таблиц при тестировании и исправлении (об этом ниже) или после выгрузки-загрузки базы через .dt.

Чем 1Cv8.1CD не является

Рядом с базой часто лежат файлы с похожими расширениями. Они к самой базе не относятся:

  • 📦 .dt — выгрузка информационной базы, архив для переноса и резервной копии. Чтобы работать, её нужно загрузить в пустую базу.
  • 🧩 .cf — файл конфигурации без данных: только справочники, документы, отчёты как структура.
  • 🔄 .cfu — файл обновления конфигурации.
  • 🔌 .cfe — расширение конфигурации .
  • 📝 .epf и .erf — внешние обработки и отчёты.

Служебные файлы и где хранится конфигурация

Конфигурация файловой базы живёт внутри того же 1Cv8.1CD, в служебных таблицах. Там две её копии:

  • 🛠️ основная конфигурация — та, которую вы правите в Конфигураторе;
  • ✅ конфигурация базы данных — та, с которой реально работают пользователи.

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

Данные хранятся в таблицах со служебными именами. Человеческие названия объектов в них не используются:

Префикс таблицыОбъект конфигурации
_ReferenceСправочники
_DocumentДокументы
_AccumRgРегистры накопления
_InfoRgРегистры сведений
_AccRgРегистры бухгалтерии
_ConstКонстанты

После префикса идёт число, например _Reference45 или _Document312. Какому справочнику соответствует номер, в каждой базе своё. Сопоставление выдаёт встроенная функция ПолучитьСтруктуруХраненияБазыДанных().

Править эти таблицы напрямую — сторонними утилитами в файловой базе или SQL-запросами в серверной — нельзя. Платформа держит в них связи и итоги регистров. Ручная правка таблиц ломает базу так, что штатное тестирование её может не восстановить.

Что хранится не в папке базы, а у пользователя

Часть файлов, которые путают с базой, лежит в профиле Windows на каждом компьютере:

  • 📋 %APPDATA%\1C\1CEStart\ibases.v8i — список баз в окне запуска. Удаление этого файла не трогает сами базы, только очищает список.
  • 🗂️ %APPDATA%\1C\1cv8\ и %LOCALAPPDATA%\1C\1cv8\ — кеш конфигурации и пользовательские настройки. Папки с длинными именами из букв и цифр — это идентификаторы баз.

Кеш бывает виновником ошибки Ошибка формата потока и странного поведения форм. Очистка кеша безопасна для данных: база при этом не меняется, при следующем запуске кеш соберётся заново.

Клиент-серверная база: где на самом деле данные

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

Физически данные лежат там, где их держит СУБД:

  • 🗄️ MS SQL Server — файлы .mdf (данные) и .ldf (журнал транзакций) в каталоге данных экземпляра SQL;
  • 🐘 PostgreSQL — каталог данных кластера PostgreSQL, где каждая база — набор файлов без понятных имён.

Копировать эти файлы вручную как «базу 1С» бессмысленно. Резервную копию делают средствами СУБД или выгрузкой .dt.

Что хранит сервер 1С

Сервер 1С данных бухгалтерии не хранит. В его рабочем каталоге — по умолчанию C:\Program Files\1cv8\srvinfo — лежат:

  • 📑 reg_1541\1CV8Clst.lst — реестр кластера: список информационных баз, параметры подключения к СУБД, рабочие серверы;
  • 📁 reg_1541\<идентификатор базы>\1Cv8Log\ — журнал регистрации каждой базы;
  • ⏳ папки snccntx… — сеансовые данные, временная информация активных сеансов.

Число 1541 в имени — порт менеджера кластера. Если кластер поднят на другом порту, имя папки будет другим.

Очистку сеансовых данных делают только при остановленной службе «Агент сервера 1С:Предприятия». Остановка службы обрывает сеансы всех пользователей всех баз кластера — делайте это вне рабочего времени и предупредив людей.

Как найти базу в СУБД

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

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

ПараметрФайловая базаКлиент-серверная база
Где данныеФайл 1Cv8.1CDФайлы СУБД (.mdf/.ldf или каталог PostgreSQL)
Где конфигурацияВнутри 1Cv8.1CDВ таблицах базы СУБД
Журнал регистрации1Cv8Log рядом с базойsrvinfo\reg_1541\<ID>\1Cv8Log на сервере 1С
Копия «на лету»Копирование файла при закрытой базеСредства СУБД без остановки работы
Комфортно пользователей1–5, до 10 при хорошей сетиДесятки и сотни
Что нужно ставитьТолько платформу 1ССервер 1С, СУБД, лицензию сервера
Риск поврежденияВыше: обрыв сети или питания бьёт по файлуНиже: у СУБД есть журнал транзакций

Файловую базу можно перевести в клиент-серверную и обратно через выгрузку .dt: выгрузили в одном варианте, создали пустую базу в другом, загрузили. Структура таблиц платформа создаст сама.

Как проверить целостность файлов базы

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

Перед любой проверкой с исправлением сделайте копию папки базы или выгрузку .dt. Исправление может удалить битые объекты, и откатить это без копии нельзя.

Способ 1. Тестирование и исправление в Конфигураторе

  1. Убедитесь, что в базе никого нет: для этой операции нужен монопольный доступ.
  2. Запустите базу в режиме Конфигуратора.
  3. Откройте Администрирование → Тестирование и исправление.
  4. Для первой проверки отметьте «Проверка логической целостности информационной базы» и «Проверка ссылочной целостности», режим — «Только тестирование».
  5. Посмотрите отчёт. Если ошибки есть, запустите повторно с режимом «Тестирование и исправление».
  6. Флажок «Сжатие таблиц информационной базы» освобождает пустое место внутри 1Cv8.1CD — тот самый случай, когда файл не уменьшается после удаления данных.

Способ 2. Утилита chdbfl.exe

Если база не открывается даже в Конфигураторе, используют утилиту chdbfl.exe («Проверка физической целостности файла базы данных»). Она лежит в каталоге установленной платформы, в папке bin, например C:\Program Files\1cv8\8.3.xx.xxxx\bin\chdbfl.exe.

  1. Закройте все сеансы базы.
  2. Запустите chdbfl.exe, укажите путь к 1Cv8.1CD.
  3. Сначала запустите проверку без флажка исправления.
  4. Если ошибки найдены — включите исправление и повторите.

Утилита работает только с файловыми базами. Для клиент-серверных физическую целостность проверяют средствами СУБД: в MS SQL — DBCC CHECKDB, в PostgreSQL — утилитой pg_amcheck (есть в версиях 14 и новее). Логическую проверку в Конфигураторе можно запускать для обоих вариантов.

Если не помогло

  • 🔁 Восстановите базу из последней копии и перенесите недостающие документы вручную.
  • 📤 Если база открывается хотя бы частично, сделайте выгрузку .dt и загрузите её в новую пустую базу: при загрузке файл собирается заново.
  • 🧑‍💻 При физическом повреждении диска сначала снимите образ диска или скопируйте файл, и только потом пробуйте исправлять копию.

Безопасность файлов базы и права доступа

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

Права на папку файловой базы

Каждому, кто работает с файловой базой, нужны права на чтение и изменение в её папке. Платформа создаёт в ней файл блокировки и журнал регистрации. Если дать только чтение, база откроется с ошибкой или не откроется вовсе.

Практичная схема для сетевой папки:

  • 👥 создайте группу Windows, например «Пользователи 1С», и выдайте ей право «Изменение» на папку базы;
  • 🚫 остальным пользователям сети доступ к папке закройте;
  • 🔒 администраторские права на папку оставьте одному-двум людям.

Не публикуйте всю папку Bases с правом «Полный доступ» для «Всех». Это самый частый путь, которым база утекает или повреждается случайным удалением.

Права в клиент-серверном варианте

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

  • доступ к серверу СУБД по сети нужен только серверу 1С и администраторам;
  • логин СУБД для 1С не должен быть общим «sa» или «postgres» на все случаи;
  • каталог srvinfo закрыт от обычных пользователей — в реестре кластера лежат параметры подключения к СУБД.

Антивирус и резервные копии

Антивирус, который проверяет 1Cv8.1CD при каждом обращении, замедляет работу и в редких случаях блокирует запись. Папку базы обычно добавляют в исключения проверки при доступе, а саму папку защищают правами и регулярными копиями.

Проверьте защиту файловой базы
Выполнено: 0 / 6

Копировать работающую файловую базу простым копированием файла нельзя: в копию может попасть недописанная транзакция. Либо закройте все сеансы и копируйте 1Cv8.1CD, либо делайте выгрузку .dt, либо используйте обработки резервного копирования, которые есть в типовых конфигурациях.

Частые вопросы

Можно ли открыть файл 1Cv8.1CD без 1С?
Штатно — нет. Формат файла закрытый, читать его умеют только платформа 1С и отдельные сторонние утилиты для разработчиков. Для бухгалтерской работы нужен установленный клиент 1С и лицензия.
Почему база весит 10 ГБ, хотя документов немного?
Чаще всего раздуваются журнал регистрации и служебные регистры, а файл не отдаёт освобождённое место. Помогают сжатие таблиц при тестировании и исправлении, настройка уровня журнала регистрации и выгрузка-загрузка через .dt.
Можно ли держать файловую базу на сетевом диске или в облачной папке?
На сетевом диске в локальной сети — да, это обычная схема. В папке, которая синхронизируется облачным сервисом, — нет: синхронизация копирует файл посреди записи, и базу легко повредить.
Как перенести файловую базу на другой компьютер?
Закройте базу на старом компьютере, скопируйте всю папку с 1Cv8.1CD на новый и добавьте её в список через «Добавить» → существующая база. Если версии платформы разные, надёжнее перенос через выгрузку .dt.
Где хранится база, если работаете через 1С:Фреш или облако?
На серверах провайдера, в клиент-серверном варианте. Файла 1Cv8.1CD у вас нет; получить базу к себе можно выгрузкой, если сервис её разрешает.