Когда речь заходит о серверных базах 1С:Предприятие, многие администраторы и разработчики сталкиваются с вопросом: где именно хранятся эти данные? Ответ зависит от режима работы — файловый или клиент-серверный (SQL), а также от версии платформы и операционной системы. Неправильное понимание структуры хранения может привести к потерям данных при переносе, резервном копировании или восстановлении.

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

1. Файловый режим: где и как хранятся базы

В файловом режиме все данные базы 1С хранятся в одном файле с расширением .1CD (для платформы 8.3 и выше). Это самый простой вариант для небольших компаний, где одновременно работает не более 5–10 пользователей. Файл базы — это не просто контейнер данных, а полноценная база с встроенной СУБД, которая управляет транзакциями и блокировками.

Стандартные пути хранения зависят от операционной системы:

  • 🖥️ Windows: C:\Users\Public\Documents\1C\1Cv8\ или C:\Program Files (x86)\1cv8\ (для старых версий).
  • 🐧 Linux: /var/1C/1cv8/ или /opt/1C/v8.3/ (в зависимости от дистрибутива).
  • 🍎 macOS: /Users/Shared/1C/1cv8/ (редко используется для серверных решений).

Важно понимать, что путь может быть изменён администратором при создании базы. Например, если диск C: заполнен, базу часто переносят на другой логический раздел (например, D:\Bases\). Чтобы точно узнать расположение:

  1. Откройте 1С:Предприятие в режиме конфигуратора.
  2. Выберите нужную базу в списке и нажмите Изменить.
  3. В поле Каталог информационной базы будет указан полный путь.
💡

Если база не отображается в списке, но вы знаете её название, проверьте файл 1cv8.lst в каталоге %APPDATA%\1C\1cv8\ (Windows) или ~/.1cv8/1cv8.lst (Linux/macOS). В нём хранятся все зарегистрированные базы с путями.

2. Клиент-серверный режим: SQL-базы и их особенности

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

Структура хранения разделяется на две части:

  1. Файлы конфигурации (метаданные):
    • 📁 Каталог с файлами .cf (конфигурация), .epf (внешние обработки), .erf (отчёты).
    • 📁 Путь указывается в настройках кластера серверов 1С (обычно C:\Program Files\1cv8\srvinfo\).
  • Данные в СУБД:
    • 🗃️ Имя базы данных в SQL-сервере (например, Base_Trade).
    • 📊 Таблицы с префиксом _1S (например, _1SJournals, _1SDocuments).

    Чтобы найти базу в SQL-сервере:

    1. Подключитесь к серверу через SQL Server Management Studio (для MSSQL) или psql (для PostgreSQL).
    2. В списке баз данных ищите имя, соответствующее вашей конфигурации (обычно оно совпадает с именем в 1С).
    3. Проверьте таблицу _1SMetadata — она содержит версию конфигурации и структуру метаданных.
    4. 📊 Какую СУБД вы используете для 1С?
      Microsoft SQL Server
      PostgreSQL
      IBM DB2
      Другую
      Не знаю

      3. Структура каталога базы 1С: что где лежит

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

      Файл/каталог Расширение Назначение
      1Cv8.1CD .1CD Основной файл базы данных (все документы, справочники, регистры).
      1Cv8.lgd .lgd Файл блокировок (используется для управления доступом пользователей).
      1Cv8Log\ (каталог) Журналы транзакций и временные файлы (критичны для восстановления после сбоев).
      ext\ (каталог) Внешние обработки, отчёты и печатные формы (.epf, .erf).
      1Cv8.DT .DT Файл временных данных (создаётся при обновлении конфигурации).

      Обратите внимание на каталог 1Cv8Log\ — его часто игнорируют при резервном копировании, но он содержит журналы транзакций, без которых невозможно восстановить базу после аварийного завершения. Например, если сервер внезапно выключился, система использует эти файлы для отката незавершённых операций.

      Что будет, если удалить файл 1Cv8.lgd?

      Без этого файла база откроется в монопольном режиме (однопользовательском), так как механизм блокировок будет отключён. Это чревато повреждением данных при одновременной работе нескольких пользователей.

      4. Где хранятся временные файлы и кэш 1С

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

      Основные расположения временных файлов:

      • 🗑️ Windows:
        • C:\Users\<ИмяПользователя>\AppData\Local\1C\1Cv8\ — кэш форм и отчётов.
        • C:\ProgramData\1C\1Cv8\ — общие временные файлы для всех пользователей.
      • 🗑️ Linux:
        • /tmp/1Cv8/ — временные файлы сессий.
        • /var/tmp/1Cv8/ — кэш и логи.

    Эти каталоги можно (и нужно) периодически очищать, особенно если пользователи жалуются на медленную работу системы. Например, в AppData\Local\1C\1Cv8\ могут накапливаться гигабайты кэша отчётов, которые никогда не используются.

    💡

    Очистка кэша 1С не влияет на целостность базы, но может ускорить работу системы. Рекомендуется делать это раз в 1–2 месяца или при появлении ошибок типа"Недостаточно памяти".

    5. Как найти базу, если путь неизвестен

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

    1. Проверьте список зарегистрированных баз:
      • В Windows: %APPDATA%\1C\1cv8\1cv8.lst.
      • В Linux: ~/.1cv8/1cv8.lst или /etc/1c/1cv8.lst.
  • Ищите по расширениям:
    # Для Windows (PowerShell)
    

    Get-ChildItem -Path C:\ -Recurse -Include *.1CD -ErrorAction SilentlyContinue

    Для Linux (Bash)

    find / -name"*.1CD" 2>/dev/null

  • Проверьте настройки кластера серверов 1С:
    • Откройте Администрирование кластера серверов 1С.
    • В списке рабочих процессов будет указан путь к базе.
  • Если база работает в SQL-режиме, но её имя в 1С не совпадает с именем в СУБД, используйте запрос:

    -- Для Microsoft SQL Server
    

    SELECT name FROM sys.databases WHERE name LIKE'%1C%' OR name LIKE'%_1S%';

    -- Для PostgreSQL

    SELECT datname FROM pg_database WHERE datname LIKE'%1c%' OR datname LIKE'%_1s%';

    Проверьте 1cv8.lst в профиле пользователя|Ищите файлы *.1CD на всех дисках|Просмотрите список баз в SQL-сервере|Уточните путь в настройках кластера 1С|Проверьте журналы сервера 1С (/var/log/1C/ в Linux)

    -->

    6. Нюансы хранения баз в облачных и виртуальных средах

    Если сервер 1С развёрнут в облаке (например, 1С:Fresh, AWS, Azure) или на виртуальной машине (VMware, Hyper-V), пути хранения могут отличаться от стандартных. Например:

    • ☁️ В 1С:Fresh физическое расположение базы скрыто от пользователя — данные хранятся на серверах 1С в зашифрованном виде.
    • 🖥️ В AWS EC2 или Azure VM базы обычно размещают на подключённых дисках (например, /mnt/1c_data/).
    • 🔄 В Docker-контейнерах пути могут быть смонтированы как тома (например, /var/lib/docker/volumes/1c_data/_data).

    При работе с виртуальными средами важно:

    • ⚠️ Не хранить базы на системном диске (например, C:\ в Windows или / в Linux) — это может привести к потере данных при пересоздании VM.
    • 🔄 Использовать сетевые хранилища (например, Amazon EFS или Azure Files) длящего доступа.
    • 📦 Настраивать автоматические снимки (snapshots) дисков перед обновлениями.
    💡

    В облачных средах (например, AWS) для баз 1С лучше использовать провижинированные IOPS-диски (например, io1 или gp3), так как они обеспечивают стабильную скорость чтения/записи, критичную для работы с большими объёмами данных.

    7. Ошибки при работе с путями хранения и как их избежать

    Неправильное обращение с файлами баз 1С — одна из главных причин их повреждения. Рассмотрим типичные ошибки и способы их предотвращения:

    ⚠️ Внимание: Никогда не переименовывайте файл 1Cv8.1CD вручную через проводник! Это приведёт к разрыву связи между базой и её метаданными в 1cv8.lst. Для переименования используйте Конфигуратор 1С.

    Частые проблемы и решения:

    • 🚫 Ошибка:"Файл базы данных повреждён" после копирования.
      Причина: Файл .1CD скопирован без журнала транзакций (1Cv8Log\).
      Решение: Восстановите базу из бэкапа или используйте утилиту chdbfl.exe (входит в дистрибутив 1С).
    • 🚫 Ошибка:"Недостаточно прав для открытия базы".
      Причина: Неправильные права на каталог (особенно актуально для Linux).
      Решение: Выполните chmod -R 775 /путь/к/базе и проверьте владельца (chown).
    • 🚫 Ошибка: База не открывается после переноса на другой сервер.
      Причина: Разная разрядность платформы (32-bit vs 64-bit) или версии СУБД.
      Решение: Проверьте совместимость версий через Конфигуратор (Справка → О программе).

    Для диагностики проблем с путями хранения полезно использовать утилиты:

    • 🔍 chdbfl.exe — проверка целостности файловой базы.
    • 🔍 1CV8.exe /D<ПутьКБазе> /N<ИмяПользователя> /P<Пароль> /TestAndRepair — тест и восстановление.
    • 🔍 sqlcmd (для MSSQL) или pg_dump (для PostgreSQL) — проверка целостности SQL-базы.

    8. Резервное копирование: что и как сохранять

    Резервное копирование баз 1С — это не просто копирование файла .1CD. Чтобы гарантировать восстановление после сбоя, нужно сохранять:

    • 💾 Файловую базу:
      • Файл 1Cv8.1CD.
      • Каталог 1Cv8Log\ (журналы транзакций).
      • Файл 1Cv8.lgd (блокировки).
    • 🗃️ SQL-базу:
      • Полный бэкап базы данных через SQL Server Management Studio или pg_dump.
      • Каталог с конфигурацией (.cf, .epf).
    • ⚙️ Дополнительно:
      • Файлы лицензий (.lic).
      • Настройки кластера серверов 1С (srvinfo\).

    Для автоматизации бэкапа можно использовать:

    • 🤖 Встроенные средства 1С: Конфигуратор → Администрирование → Выгрузить информационную базу.
    • 🤖 Скрипты:
      # Пример для файловой базы (Windows, PowerShell)
      

      $source ="D:\Bases\Trade\"

      $destination ="E:\Backup\Trade_$(Get-Date -Format'yyyyMMdd').zip"

      Compress-Archive -Path"$source\*" -DestinationPath $destination -Force

    • 🤖 Сторонние утилиты: Veeam, Acronis (для виртуальных машин), Bacula (для Linux).
    ⚠️ Внимание: При резервном копировании SQL-баз 1С нельзя просто копировать файлы .mdf/.ldf (для MSSQL) или каталог /var/lib/postgresql/ (для PostgreSQL) на работающем сервере. Это приведёт к повреждению данных. Используйте только штатные средства бэкапа СУБД!

    FAQ: Частые вопросы о хранении баз 1С

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

    Да, это стандартная процедура. Для этого:

    1. Создайте новую пустую базу на SQL-сервере через Конфигуратор.
    2. Выгрузите данные из файловой базы (Администрирование → Выгрузить данные).
    3. Загрузите их в новую SQL-базу (Администрирование → Загрузить данные).

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

    Почему после обновления 1С база перестала открываться?

    Чаще всего это связано с:

    • Несовместимостью версии платформы и конфигурации (проверьте в Конфигуратор → Справка → О программе).
    • Повреждением файла 1Cv8.1CD (восстановите из бэкапа или используйте chdbfl.exe).
    • Отсутствием прав на каталог (особенно актуально для Linux после обновления).

    Решение: откат на предыдущую версию платформы или восстановление базы из резервной копии.

    Где хранятся настройки пользователей 1С (например, сохранённые отчёты)?

    Настройки пользователей хранятся:

    • В файловом режиме: внутри файла 1Cv8.1CD (в таблицах _UsersSettings).
    • В SQL-режиме: в таблицах базы данных с префиксом _1SUser.
    • Локально на компьютере пользователя: %APPDATA%\1C\1Cv8\\ (например, сохранённые варианты отчётов).
    Как узнать, какая СУБД используется для моей базы 1С?

    Способы определения:

    1. В Конфигураторе откройте Справка → О программе. В разделе Информационная база будет указан тип СУБД.
    2. Проверьте файл 1Cv8.lst — в строке с описанием базы может быть параметр DBMS=.
    3. Для SQL-баз подключитесь к серверу и выполните запрос:
      -- Для MSSQL
      

      SELECT SERVERPROPERTY('EngineEdition') AS Edition;

      -- Для PostgreSQL

      SELECT version;

    Можно ли хранить базу 1С на сетевом диске (NAS)?

    Технически да, но:

    • Для файлового режима: возможны проблемы с производительностью и блокировками при большом количестве пользователей.
    • Для SQL-режима: категорически не рекомендуется хранить файлы СУБД (например, .mdf) на сетевом диске — это приведёт к повреждению данных.
    • 🔄 Рекомендация: используйте NAS только для резервных копий, а рабочие базы храните на локальных или облачных дисках с высокой скоростью доступа.