Что на самом деле хранит информационная база 1С и как она защищает ваши данные

· 10 мин

Содержание

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

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

Что хранится в информационной базе и как устроено хранение

Информационная база 1С объединяет две вещи: описание учёта (конфигурацию) и данные, которые по этому описанию накоплены.

Конфигурация

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

В базе одновременно лежат:

  • 📐 основная конфигурация — та, что пришла от поставщика или после доработки;
  • 🗄 конфигурация базы данных — версия, по которой сейчас реально построены таблицы;
  • 🧩 расширения — доработки, которые подключаются поверх типовой конфигурации, не меняя её.

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

Данные

Каждый объект конфигурации превращается в одну или несколько таблиц:

Объект конфигурацииЧто хранитПример
СправочникСписки, которые меняются редкоКонтрагенты, номенклатура, сотрудники
ДокументФакты хозяйственной жизниПоступление товаров, начисление зарплаты
Регистр накопленияДвижения и остаткиТовары на складах, взаиморасчёты
Регистр бухгалтерииПроводки и обороты по счетамДт 41.01 Кт 60.01
Регистр сведенийЗначения во времениКурсы валют, цены, учётная политика
КонстантаОдно значение на всю базуОсновная организация, дата запрета

Документ при проведении записывает движения в регистры. Отчёты потом читают уже регистры, а не перебирают документы. Поэтому оборотно-сальдовая ведомость за год строится за секунды, а не за час.

💡 Регистры накопления и бухгалтерии хранят ещё и итоги — заранее посчитанные остатки по периодам. Это главный приём, на котором держится скорость отчётов в 1С.

Служебные данные

Кроме учёта, база хранит то, о чём пользователи обычно не думают:

  • 👤 список пользователей, их роли и пароли (в виде хеша, не открытым текстом);
  • ⚙️ персональные настройки форм и отчётов;
  • 🔢 нумераторы документов;
  • 📜 журнал регистрации — кто, когда и что менял (хранится рядом с базой, в каталоге 1Cv8Log у файловой базы).

Ссылочная целостность тоже на совести базы. Если контрагент указан в документах, удалить его «напрямую» нельзя: сначала пометка на удаление, затем проверка ссылок и только потом удаление.

Файловая база или SQL-сервер: два режима работы

Платформа 8.3 работает с базой в двух вариантах. Учётные возможности конфигурации одинаковы, разница — в надёжности, скорости и числе пользователей.

Файловый вариант

Вся база — один файл 1Cv8.1CD в папке на диске или в сетевом ресурсе. Рядом лежат служебные каталоги: журнал регистрации 1Cv8Log, индекс полнотекстового поиска 1Cv8FTxt.

Плюсы:

  • ✅ не нужен отдельный сервер и СУБД;
  • ✅ базу легко скопировать на флешку или другой компьютер;
  • ✅ подходит для одного-нескольких пользователей и небольших объёмов.

Минусы:

  • ❌ при работе по сети каждый клиент сам читает файл — при росте числа пользователей всё тормозит;
  • ❌ сбой сети или питания во время записи может повредить файл;
  • ❌ у всех пользователей должен быть доступ на чтение и запись к папке базы, а значит, файл можно просто скопировать.

Клиент-серверный вариант

Данные хранятся в отдельной СУБД, а между пользователями и СУБД стоит кластер серверов 1С. Пользователь подключается к агенту сервера (порт 1540 по умолчанию), тот передаёт его менеджеру кластера (1541) и рабочим процессам.

Платформа 8.3 поддерживает четыре СУБД:

  • 🐘 PostgreSQL — чаще всего сборки, адаптированные для 1С; бесплатен;
  • 🪟 Microsoft SQL Server — классический выбор на Windows;
  • 🏢 IBM Db2 и Oracle Database — встречаются в крупных компаниях.

Клиент-серверный режим выдерживает сотни одновременных пользователей, блокирует данные точнее, а бэкапы делает средствами СУБД без остановки работы.

Какой вариант базы выбрать?

Перевести базу между режимами можно в любую сторону: выгрузить её в файл .dt в Конфигураторе и загрузить в новую пустую базу нужного типа.

Как база 1С справляется с одновременной работой пользователей

Когда два менеджера одновременно продают последний товар со склада, база должна пропустить только одну продажу. Для этого существуют транзакции и блокировки.

Транзакции

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

Блокировки

Пока одна транзакция пишет данные, другие не должны их менять. В свойствах конфигурации есть параметр «Режим управления блокировкой данных» с вариантами:

  • Автоматический — блокировки ставит СУБД, часто крупными кусками;
  • Управляемый — блокировки ставит сама 1С по конкретным записям, а программист явно указывает, что блокировать;
  • Автоматический и управляемый — переходный вариант для доработанных конфигураций.

Современные типовые конфигурации работают в управляемом режиме. Это и даёт возможность сотне пользователей проводить документы одновременно.

⚠️ В файловом варианте блокировка идёт на уровне целых таблиц. Если один бухгалтер проводит большой документ, остальные, кто пишет в те же таблицы, ждут. Отсюда типичные жалобы «всё зависло, когда Маша закрывает месяц».

Монопольный режим

Иногда базе нужно, чтобы в ней не было никого, кроме администратора. Монопольный доступ обязателен для:

  1. обновления структуры базы данных после изменения конфигурации;
  2. загрузки информационной базы из файла .dt;
  3. тестирования и исправления базы.

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

Резервное копирование: как не потерять данные базы 1С

База данных — единственное место, где хранится учёт. Если она испорчена и копии нет, восстанавливать придётся по бумагам и выпискам.

Способы сделать копию

СпособКогда подходитРиски
Выгрузка в .dt через Конфигуратор (Администрирование → Выгрузить информационную базу)Любой режим, разовая копия перед обновлениемНужен монопольный доступ, на больших базах долго
Копирование файла 1Cv8.1CDФайловая базаКопировать только при закрытой базе, иначе копия может быть битой
Резервное копирование из типовой конфигурации (раздел «Администрирование», группа обслуживания)Файловая база, автоматическое расписаниеРаботает, пока открыта программа на компьютере с расписанием
Бэкап средствами СУБД (MS SQL, PostgreSQL)Клиент-серверный режимНужен администратор, который проверяет восстановление

Для клиент-серверной базы на MS SQL стандартная схема — полный бэкап раз в сутки плюс копии журнала транзакций каждые 15–60 минут при модели восстановления Full. Тогда при сбое теряется не день работы, а последние минуты. Для PostgreSQL аналог — pg_dump для ежедневной копии и архивирование WAL для точечного восстановления.

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

Если база повреждена

Для файловой базы есть два инструмента:

  1. Тестирование и исправление в Конфигураторе: Администрирование → Тестирование и исправление. Проверяет логическую и ссылочную целостность, пересчитывает итоги, сжимает таблицы.
  2. Утилита chdbfl.exe в каталоге bin платформы — проверяет физическую целостность файла 1Cv8.1CD, когда база не открывается вовсе.

⚠️ Обе операции запускайте только на копии базы или после свежей резервной копии: режим исправления может удалить битые объекты.

Скорость работы базы 1С: что на неё влияет

Медленная 1С почти всегда упирается в базу данных: в диск, в блокировки или в неудачные запросы.

Что тормозит чаще всего

  • 💾 Медленный диск. Файловая база на HDD или сетевой папке через слабый канал. SSD даёт кратный прирост.
  • 🔒 Ожидание на блокировках. Пользователи ждут друг друга при проведении документов.
  • 📊 Устаревшая статистика СУБД. Оптимизатор SQL выбирает плохой план запроса.
  • 🧾 Отключённые или неактуальные итоги. Отчёты считают остатки с начала времён.
  • 🧑‍💻 Тяжёлые доработки. Запрос в цикле, обращение к реквизитам через точку на тысячах строк.

Что делать администратору

Для клиент-серверной базы настройте регламентные задания в СУБД:

-- MS SQL: обновить статистику по всей базе (база BUH — пример имени)
USE BUH;
EXEC sp_updatestats;

Для PostgreSQL аналог — регулярный VACUUM ANALYZE (обычно его закрывает автовакуум, но после больших загрузок полезно запустить вручную).

Ещё три рычага:

  1. Перестройка индексов раз в неделю на больших базах — в планах обслуживания MS SQL.
  2. Управление итогами: в типовых конфигурациях есть обработка для установки периода рассчитанных итогов, в Конфигураторе это делается через режим тестирования с пересчётом итогов.
  3. Технологический журнал — файл logcfg.xml в каталоге настроек платформы включает запись медленных запросов и ожиданий на блокировках. По нему видно, какой именно запрос виноват.

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

Безопасность данных и права доступа к базе 1С

База хранит зарплаты, банковские реквизиты, персональные данные сотрудников. Защищать её нужно на трёх уровнях.

Уровень 1: пользователи и роли внутри 1С

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

В типовых конфигурациях на БСП пользователями управляют в режиме «Предприятие»: Администрирование → Настройки пользователей и прав. Там же — группы доступа (профили): «Бухгалтер», «Кадровик», «Менеджер по продажам».

Для тонкой настройки есть ограничение доступа на уровне записей (RLS): например, менеджер видит документы только своей организации или своего склада.

Способы входа:

  • 🔑 по имени и паролю 1С;
  • 🪟 аутентификация операционной системы — пользователь Windows входит без пароля 1С;
  • 🌐 OpenID — для веб-публикаций.

Учётная запись без пароля с полными правами — главная дыра в безопасности базы. Проверьте список пользователей прямо сейчас.

Уровень 2: доступ к файлам и серверу

Для файловой базы права в 1С не защищают сам файл. Любой, у кого есть доступ к папке, скопирует 1Cv8.1CD и откроет его у себя. Поэтому:

  • ограничьте сетевую папку только нужными учётными записями Windows;
  • не храните базу в общедоступной «шаре» вида \\server\обмен.

В клиент-серверном варианте пользователи вообще не видят СУБД. Логин и пароль к SQL знает только кластер 1С. Доступ к серверу СУБД закрывают сетевым экраном, а администратора кластера защищают отдельным паролем.

Уровень 3: журнал регистрации

Журнал регистрации фиксирует входы, изменения документов, удаление объектов. Открывается в Конфигураторе: Администрирование → Журнал регистрации, а в типовых конфигурациях — в разделе «Администрирование» через поиск по слову «журнал». По нему отвечают на вопрос «кто удалил накладную в прошлую пятницу».

Что проверить в своей базе 1С за полчаса

Короткая ревизия, которая показывает, в каком состоянии ваша база данных:

Ревизия информационной базы
Выполнено: 0 / 8

Если три и больше пунктов не выполнены, начните с резервного копирования: остальное можно исправить, а потерянные данные — нет.

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

Можно ли открыть базу 1С без самой программы?
Нет. Файл 1Cv8.1CD имеет закрытый формат и читается только платформой 1С:Предприятие. Таблицы SQL-базы видны в СУБД, но их имена служебные (_Document123, _Reference45), и без конфигурации разобраться в них почти невозможно.
Сколько весит база 1С?
Новая база Бухгалтерии предприятия занимает сотни мегабайт, рабочая база небольшой фирмы за несколько лет — единицы гигабайт. Крупные базы на SQL-сервере вырастают до сотен гигабайт. Больше всего места обычно занимают присоединённые файлы, если их хранят внутри базы.
Нужна ли отдельная лицензия на сервер 1С?
Да, для клиент-серверного варианта нужна лицензия на сервер 1С:Предприятия, кроме клиентских лицензий. Для файловой базы серверная лицензия не нужна. Сама СУБД PostgreSQL бесплатна, MS SQL требует собственной лицензии.
Можно ли держать несколько организаций в одной базе?
Да, типовые конфигурации поддерживают ведение учёта нескольких организаций в одной базе. Это удобно, если у компаний общие контрагенты и номенклатура, а права доступа можно разделить по организациям.
Чем база 1С отличается от конфигурации?
Конфигурация — это структура и логика учёта, база — конфигурация вместе с накопленными данными. Файл .cf содержит только конфигурацию, файл .dt — всю базу целиком с данными.