Физическое расположение информационной базы 1С на диске и на сервере
Содержание
Файловая база 1С — это папка, внутри которой лежит главный файл 1Cv8.1CD. Узнать, где лежат файлы базы, проще всего в окне запуска: выделите базу в списке, и внизу окна появится строка вида File="D:\Bases\Buh". Это и есть физическое расположение каталога. Если внизу написано Srvr=...;Ref=..., база клиент-серверная, и её данные хранятся не в папке, а в СУБД на сервере.
Типичная ситуация: бухгалтер переезжает на новый компьютер, старый ноутбук уже отдают в ремонт, а где лежит база 1С Предприятие — никто не помнит. Ярлык запускает программу, но путь нигде не видно. Ниже — все места, где этот путь можно найти: в интерфейсе, в файлах настроек, в консоли сервера и в самой СУБД.
Из чего состоит файловая база 1С и где её создают по умолчанию
Каталог файловой базы содержит несколько объектов. Главный — один, остальные служебные.
| Файл или папка | Что хранит | Можно ли удалить |
|---|---|---|
📦 1Cv8.1CD | Все данные и конфигурацию базы | Нет, это и есть база |
📜 1Cv8Log | Журнал регистрации | Можно, но потеряете историю действий пользователей |
🔎 1Cv8FTxt | Индекс полнотекстового поиска | Да, программа пересоздаст индекс |
⏳ Временные файлы рядом с 1Cv8.1CD | Служебные данные открытых сеансов | Только когда в базе никто не работает |
Размер 1Cv8.1CD у небольшой организации обычно от сотен мегабайт до нескольких гигабайт. Если в папке нет файла 1Cv8.1CD, это не каталог базы, а, например, папка с выгрузками или резервными копиями.
Где программа создаёт новую базу, если при создании путь не меняли:
- 🪟 Windows —
C:\Users\<имя пользователя>\Documents\InfoBase, следующие базы получают именаInfoBase1,InfoBase2и так далее; - 🐧 Linux — каталог
InfoBaseв домашней папке пользователя, от имени которого создавали базу.
Многие базы со временем переносят на диск D: или в сетевую папку. Поэтому путь по умолчанию — только первая гипотеза, а не ответ.
Как найти базу поиском по диску
Если окно запуска недоступно (например, профиль пользователя повреждён), ищите сам файл. В командной строке Windows:
dir C:\1Cv8.1CD /s /b
dir D:\1Cv8.1CD /s /b
В PowerShell — по всем дискам сразу:
Get-PSDrive -PSProvider FileSystem | ForEach-Object {
Get-ChildItem -Path $_.Root -Filter 1Cv8.1CD -Recurse -ErrorAction SilentlyContinue |
Select-Object FullName, Length, LastWriteTime
}
В Linux:
find / -name "1Cv8.1CD" 2>/dev/null
Если нашлось несколько файлов, смотрите на дату изменения. У рабочей базы она свежая — сегодняшняя или вчерашняя. Старые копии обычно лежат месяцами без изменений.
Как узнать путь к базе 1С через интерфейс программы
Есть три способа, и все они не требуют прав администратора.
Способ 1. Окно запуска
- Запустите 1С с ярлыка, чтобы открылся список информационных баз.
- Один раз щёлкните по нужной базе (не двойным щелчком, чтобы она не открылась).
- Прочитайте строку под списком. Для файловой базы там будет
File="путь".
Чтобы скопировать путь целиком, нажмите Изменить... справа от списка. На следующем шаге мастера путь показан в поле, и его можно выделить и скопировать.
Способ 2. Окно «О программе» в открытой базе
В уже открытой базе откройте главное меню (кнопка с тремя полосками в левом верхнем углу) и выберите Справка → О программе. В окне есть строка с информационной базой: для файлового варианта там указан каталог, для серверного — имя сервера и базы.
Этот способ удобен, когда база запускается с ярлыка напрямую, минуя список.
Способ 3. Свойства ярлыка
Если на рабочем столе ярлык конкретной базы, откройте его свойства. В поле «Объект» после пути к 1cv8.exe или 1cestart.exe может стоять параметр /F"D:\Bases\Buh" — это путь к файловой базе. Параметр /S"server\base" означает серверную базу
.
Где хранятся данные базы 1С в клиент-серверном варианте
В серверном варианте на диске пользователя нет ничего, кроме кэша. Данные лежат в СУБД — Microsoft SQL Server или PostgreSQL. Сервер 1С при этом хранит у себя только служебные файлы кластера.
Цепочка такая: клиент обращается к агенту сервера 1С (по умолчанию порт 1540), агент передаёт запрос менеджеру кластера (1541), а данные рабочие процессы забирают из СУБД. Поэтому, чтобы найти физические файлы, нужно сначала выяснить, в какой базе СУБД лежит ваша информационная база.
Шаг 1. Узнать имя базы в СУБД
- Откройте консоль администрирования серверов 1С.
- Разверните
Центральные серверы 1С:Предприятия → имя сервера → Кластеры → кластер → Информационные базы. - Откройте свойства нужной базы. В них указаны сервер СУБД, тип СУБД и имя базы данных.
Имя базы 1С в списке запуска и имя базы в СУБД могут не совпадать. Например, в 1С база называется buh, а в SQL — buh_2019_copy. Ориентируйтесь на свойства в консоли.
Шаг 2. Найти файлы в Microsoft SQL Server
В SQL Server Management Studio выполните запрос:
SELECT name, physical_name, size * 8 / 1024 AS size_mb
FROM sys.master_files
WHERE database_id = DB_ID('buh');
Вы получите два файла: данные .mdf и журнал транзакций .ldf. Обычно они лежат в каталоге вида C:\Program Files\Microsoft SQL Server\MSSQL<версия>.MSSQLSERVER\MSSQL\DATA\, но администратор часто выносит их на отдельный диск.
Шаг 3. Найти файлы в PostgreSQL
Сначала узнайте каталог данных кластера PostgreSQL:
SHOW data_directory;
Затем — внутренний идентификатор нужной базы:
SELECT oid, datname FROM pg_database WHERE datname = 'buh';
Файлы этой базы лежат в подкаталоге base/<oid> внутри каталога данных. Типичный каталог данных в Debian и Ubuntu — /var/lib/postgresql/<версия>/main, в дистрибутивах семейства Red Hat — /var/lib/pgsql/<версия>/data.
Копировать файлы .mdf или каталог base/<oid> при работающей СУБД бессмысленно: такая копия почти наверняка не поднимется. Резервную копию серверной базы делают средствами СУБД или выгрузкой .dt, а не копированием файлов.
Что лежит в каталоге srvinfo
Служебный каталог сервера 1С по умолчанию:
- 🪟 Windows —
C:\Program Files\1cv8\srvinfo; - 🐧 Linux —
/home/usr1cv8/.1cv8/1C/1cv8.
Внутри есть папка reg_1541 с реестром кластера (файл 1CV8Clst.lst) и подпапки, названные по идентификаторам баз. В них — журналы регистрации серверных баз и сеансовые данные. Самих учётных данных там нет.
Что о расположении базы есть в реестре Windows
Список информационных баз платформа 1С в реестре не хранит. Поиск по реестру по слову 1Cv8.1CD или по имени базы почти всегда ничего не даёт — это нормально.
Реестр полезен в другом случае: когда нужно найти каталог srvinfo на сервере, где его перенесли с пути по умолчанию. Служба агента сервера 1С описана в ветке:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
Найдите в ней раздел службы агента (в имени есть «1C:Enterprise 8.3 Server Agent»). В параметре ImagePath записана командная строка запуска ragent.exe. После ключа -d указан каталог данных кластера, а ключи -port и -regport показывают номера портов.
Тот же путь можно увидеть без редактора реестра: откройте services.msc, свойства службы агента, поле «Исполняемый файл».
Не меняйте ImagePath вручную при работающих пользователях. Изменения вступят в силу только после перезапуска службы, а перезапуск оборвёт все сеансы в базах этого сервера. Делайте это вне рабочего времени.
Файл ibases.v8i: где лежит список баз 1С
Всё, что вы видите в окне запуска, хранится в текстовом файле ibases.v8i. Он свой у каждого пользователя Windows:
%APPDATA%\1C\1CEStart\ibases.v8i
Обычно это C:\Users\<имя>\AppData\Roaming\1C\1CEStart\ibases.v8i. В Linux — ~/.1C/1cestart/ibases.v8i. Папка AppData скрытая: вставьте путь %APPDATA%\1C\1CEStart в адресную строку проводника, и он откроется сам.
Файл открывается в «Блокноте». Каждая база — отдельный блок:
[Бухгалтерия ООО Ромашка]
Connect=File="D:\Bases\Buh";
ID=...
Folder=/
...
[Зарплата]
Connect=Srvr="srv1c";Ref="zup";
...
Строка Connect и есть ответ на вопрос, где база. File= — каталог файловой базы, Srvr= и Ref= — сервер и имя базы в кластере.
Общие списки и 1cestart.cfg
Рядом с ibases.v8i лежит файл 1cestart.cfg. В нём бывают строки CommonInfoBases= — ссылки на общие файлы списков баз, например на сетевой папке. Если база видна в списке, но её нет в вашем ibases.v8i, ищите её в файле по такой ссылке.
Общий для всех пользователей компьютера 1cestart.cfg лежит в C:\ProgramData\1C\1CEStart\.
При переезде на новый компьютер скопируйте ibases.v8i в ту же папку нового профиля. Список баз восстановится целиком, если пути к базам на новом месте остались прежними.
Базы на терминальном сервере, в облаке и на Linux
Терминальный сервер (RDP)
У каждого пользователя терминала свой профиль, а значит, свой ibases.v8i. Сама база при этом одна и обычно лежит на диске сервера, например D:\1C_Bases\. Чтобы узнать путь, зайдите под любым пользователем, который видит базу, и посмотрите строку под списком в окне запуска.
Администраторы часто раздают список через CommonInfoBases в общем 1cestart.cfg. Тогда правка одного файла меняет список у всех.
Облачные сервисы и аренда 1С
В облачном сервисе по модели SaaS физических файлов базы у пользователя нет. Данные лежат на серверах провайдера, а получить их можно только выгрузкой, которую предоставляет сам сервис. Порядок выгрузки и формат уточните у провайдера: у разных сервисов он свой.
При аренде виртуального сервера или терминала база лежит на диске этого сервера. Путь ищется так же, как на обычном компьютере.
Linux
Список баз — ~/.1C/1cestart/ibases.v8i. Пользовательский кэш платформы — в ~/.1cv8/. Файловые базы обычно лежат в домашнем каталоге или в /opt, /srv, /var — там, куда их положил администратор. Права на каталог базы должны позволять запись пользователю, от имени которого запускают 1С, иначе база откроется с ошибкой доступа.
Как перенести и восстановить файлы базы 1С
Есть два надёжных способа перенести базу. Выбирайте по варианту базы и задаче.
| Способ | Когда подходит | На что смотреть |
|---|---|---|
| 📁 Копирование каталога | Файловая база, перенос на другой компьютер или диск | В базе не должно быть пользователей |
💾 Выгрузка .dt | Любая база, в том числе смена файловой на серверную и обратно | Загрузка .dt полностью заменяет данные в базе-приёмнике |
Перенос файловой базы копированием
- Попросите всех выйти из базы. Проверьте, что 1С закрыта и у вас.
- Скопируйте весь каталог целиком, а не только
1Cv8.1CD. - На новом месте в окне запуска нажмите
Добавить...и выберите добавление существующей информационной базы. - Укажите новый каталог и откройте базу.
Копия, снятая при работающих пользователях, может оказаться повреждённой. Это главная причина, по которой «скопированная база не открывается».
Перенос через выгрузку .dt
- Откройте базу в Конфигураторе.
- Выберите
Администрирование → Выгрузить информационную базу...и сохраните файл.dt. - Создайте на новом месте пустую базу и откройте её в Конфигураторе.
- Выберите
Администрирование → Загрузить информационную базу...и укажите файл.
Для загрузки нужен монопольный доступ к базе-приёмнику: в ней не должно быть других сеансов.
Если файл 1Cv8.1CD повреждён
- Сначала скопируйте повреждённый каталог в отдельную папку. Все дальнейшие действия — с копией.
- Запустите в Конфигураторе
Администрирование → Тестирование и исправление...и начните с проверки без исправления. - Если Конфигуратор базу не открывает, используйте утилиту
chdbfl.exeиз каталогаbinустановленной платформы, напримерC:\Program Files\1cv8\8.3.x.xxxx\bin\. Она проверяет физическую целостность файла1Cv8.1CD. - Если не помогло — восстановите базу из последней резервной копии.
Не запускайте исправление на единственном экземпляре базы: при сильном повреждении утилита может удалить часть данных без возможности вернуть их. Для тестирования и исправления тоже нужен монопольный доступ.