Где хранится база 1С: находим каталог файла 1CD и сервер
Содержание
Первое, что нужно понять: название базы в списке запуска и её место на диске или сервере не связаны. Список показывает произвольное имя, например «Бухгалтерия ООО Ромашка». Реальный адрес спрятан в свойствах записи. Узнать его можно за минуту, если сначала определить, какая у вас база: файловая или клиент-серверная.
Файловая база — это папка с файлом 1Cv8.1CD. Клиент-серверная живёт на сервере 1С, а сами данные лежат в СУБД (PostgreSQL или MS SQL Server). Способы поиска для них разные, поэтому начнём с различия.
1Cv8.1CD в этой папке. Переходите к разделу про файловые базы.default.vrd на веб-сервере.Как отличить файловую базу от клиент-серверной
Самый быстрый способ — окно запуска. Откройте обычный запуск 1С (не конфигуратор), выделите нужную базу и нажмите «Изменить». Откроется мастер, где на первом шаге показан тип расположения: на этом компьютере или в локальной сети — это файловый вариант; на сервере 1С:Предприятия — клиент-серверный.
Есть и косвенные признаки:
- 📁 В папке с базой лежит
1Cv8.1CD— база файловая. - 🖥 На сервере запущены процессы
rphost.exe,ragent.exe,rmngr.exe— на нём работает кластер 1С. - 🗄 Папка с базой отсутствует, а пользователи подключаются по имени сервера — данные в СУБД.
Если 1С уже открыта, посмотрите на неё изнутри. Из встроенного языка тип базы определяется функцией ИнформационнаяБазаФайловая(), а строка соединения целиком возвращается функцией СтрокаСоединенияИнформационнойБазы(). Для файловой базы она будет такой:
File="D:\Bases\Buh30";
Для клиент-серверной — такой:
Srvr="srv-1c:1541";Ref="buh30";
Из первой строки сразу видно каталог, из второй — имя сервера и имя базы на нём. Выполнить функцию можно в консоли кода или в обработке, которая показывает результат в сообщении. Если ни того ни другого под рукой нет, переходите к ручным способам ниже.
Где лежит файловая база: список запуска, ярлык и скрытый файл
Через окно запуска
Выделите базу в списке и нажмите «Изменить». В мастере дойдите до шага, где указан «Каталог информационной базы». Это и есть искомая папка. Скопируйте путь целиком, если он длинный: на сетевых ресурсах он выглядит как \\fileserver\1c\buh.
В самой папке ищите 1Cv8.1CD. Рядом обычно лежат подпапка 1Cv8Log (журнал регистрации) и файлы блокировки, пока база открыта.
Через свойства ярлыка
Если пользователь запускает 1С с рабочего стола, нажмите на ярлык правой кнопкой и откройте «Свойства». В поле «Объект» после имени исполняемого файла идут параметры. Параметр /F — путь к файловой базе, /S — сервер и имя базы, /IBName — имя записи из списка баз.
Если вы видите /IBName, путь нужно искать в списке запуска: ярлык ссылается на запись по имени. Если /F или /S — адрес указан прямо в ярлыке.
Через файл со списком баз
Список баз клиента хранится в текстовом файле ibases.v8i. Для обычной установки на Windows он лежит в профиле пользователя: в каталоге AppData\Roaming\1C\1CEStart. Откройте его блокнотом. Каждая база описана блоком с названием в квадратных скобках и строкой Connect=, где записан тот же путь, что и в мастере:
[Бухгалтерия]
Connect=File="D:\Bases\Buh30";
Это удобно, когда нужно переложить список на другой компьютер или собрать адреса всех баз разом. Профиль у каждого пользователя свой, поэтому у соседа по офису список может быть другим.
Список может храниться не в стандартном месте: в конфигурационном файле 1cestart.cfg допускается указать дополнительные файлы со списками баз, в том числе общие, на сетевом ресурсе. Если в профиле пользователя пусто, а база в списке есть, ищите такую ссылку.
Через диспетчер задач
Когда 1С запущена, можно посмотреть параметры процесса. В диспетчере задач включите столбец «Командная строка» и найдите процесс 1cv8.exe или 1cv8c.exe. В параметрах будет указана строка подключения к базе. Способ выручает, если запись в списке вам недоступна, а сеанс уже открыт.
Где данные клиент-серверной базы: сервер кластера и СУБД
У клиент-серверной базы два адреса, и их легко перепутать:
| Что ищем | Где лежит | Где смотреть |
|---|---|---|
| Сервер 1С (кластер) | Рабочий сервер с ragent.exe | Окно запуска, Srvr= в строке соединения |
| Имя базы на кластере | Список баз кластера | Окно запуска, Ref= |
| Сервер СУБД | Часто тот же сервер, иногда отдельный | Консоль администрирования, свойства базы |
| Имя базы в СУБД | Может не совпадать с именем на кластере | Консоль администрирования, свойства базы |
Имя на кластере и имя в СУБД могут быть разными. Например, база называется buh30 в списке кластера, а в PostgreSQL она создана как buh_2019. Поэтому одного имени из окна запуска для работы с СУБД недостаточно.
Порт по умолчанию для обращения клиента к агенту сервера — 1540. Если в строке соединения указан другой порт, например srv-1c:2540, значит, при установке выбирали нестандартный.
Не копируйте и не двигайте файлы базы СУБД на уровне диска. Для клиент-серверной базы нужны штатные средства выгрузки: выгрузка в .dt или резервная копия самой СУБД. Простое копирование папки с данными PostgreSQL или файла MS SQL на работающем сервере даст нерабочую копию.
Консоль администрирования серверов 1С
Консоль — стандартный способ увидеть, как база описана на кластере. Она ставится вместе с сервером или отдельным компонентом, а запускается из оснастки управления. В дереве раскройте «Центральные серверы 1С:Предприятия», затем нужный сервер, кластер и пункт «Информационные базы».
Дважды щёлкните по базе. В свойствах вы увидите:
- 🧩 имя базы на кластере;
- 🗄 тип СУБД (PostgreSQL, Microsoft SQL Server и другие);
- 🖥 имя сервера баз данных;
- 📦 имя базы данных в СУБД;
- 🔒 состояние блокировки сеансов и регламентных заданий.
Здесь же видны активные сеансы и соединения: по ним понятно, с каких компьютеров пользователи работают с базой. Доступ в консоль есть не у каждого: нужны права администратора кластера. Если вы не администратор, а пароль не знаете, спросите того, кто ставил сервер.
Если консоль не показывает кластер или выдаёт ошибку соединения, не пересоздавайте кластер. Проверьте, запущена ли служба агента сервера и открыт ли порт 1540 для вашего компьютера. Перезапуск службы оборвёт сеансы всех пользователей, делайте его вне рабочего времени.
Утилита rac
Тот же результат даёт консольная утилита администрирования rac. Она идёт вместе с сервером 1С и подключается к службе администрирования (по умолчанию на порту 1545). Сначала получите идентификатор кластера:
rac cluster list
Затем выведите краткий список баз этого кластера, подставив идентификатор из первой команды:
rac infobase summary list --cluster=<идентификатор кластера>
Подробные свойства одной базы выводит команда rac infobase info с указанием кластера и идентификатора базы. Полный список команд и параметров смотрите в справке: rac help. Для работы нужна запущенная служба администрирования; если команда не отвечает, её нужно включить на сервере.
Журнал регистрации и служебные файлы
Когда нужна не только папка базы, но и связанные данные, пригодятся служебные каталоги.
Файловая база. Журнал регистрации лежит рядом с 1Cv8.1CD в подпапке 1Cv8Log. Если эту папку удалить, журнал пропадёт, а сама база останется рабочей. Кеш индекса полнотекстового поиска хранится в 1Cv8FTxt.
Клиент-серверная база
. Журнал лежит на сервере 1С в каталоге данных кластера (по умолчанию он называется srvinfo). Внутри — папка вида reg_1541 по номеру порта менеджера кластера, а в ней вложенные папки, названные уникальными идентификаторами баз. Нужную вы найдёте, сопоставив идентификатор из консоли или из команды rac infobase info с именем папки.
Этот путь стоит запомнить, если нужно оценить размер журнала или перенести его. А вот перенос самих данных клиент-серверной базы так не делается: он идёт через выгрузку или средствами СУБД.
Изнутри 1С журнал открывается обычно из раздела администрирования; в типовых конфигурациях бухгалтерии есть пункт «Журнал регистрации» в разделе «Администрирование». В записях журнала видны компьютер и приложение, с которых зашёл пользователь. По ним можно найти рабочее место, где запущена нужная вам копия.
Публикация на веб-сервере
Если база опубликована для работы через браузер или как веб-сервис, в каталоге публикации на веб-сервере (Apache или IIS) лежит файл default.vrd. В его начале есть атрибут ib, в котором записана строка соединения базы, например ib="Srvr=srv-1c;Ref=buh30;". Так вы узнаете, к какой базе привязан адрес вида http://сервер/buh, даже когда на самом сервере десятки публикаций.
Что не нужно делать при поиске
Поиск расположения сам по себе безопасен. Опасны действия, которые люди совершают «заодно».
- Открывать
1Cv8.1CDблокнотом или архиватором и пытаться что-то в нём править. Файл бинарный, любое изменение разрушает его. - Копировать файл базы, пока в ней работают. Закройте все сеансы или сделайте выгрузку в
.dtиз конфигуратора. - Удалять файлы блокировки (например,
1Cv8.CDN) в папке открытой базы. Если база зависла, сначала выясните, кто в ней работает. - Менять путь в записи списка, если файл базы на новом месте не лежит. Запись просто станет «пустой», а база продолжит лежать на старом.
Уберёт путаницу и простая практика: сразу после того, как нашли базу, запишите её адрес, тип, имя в СУБД и ответственного. Пять строк в таблице избавят от следующего поиска, когда сотрудник уволится, а компьютер пересоберут.
Типичные трудности при поиске
В списке запуска записи нет, а база работает. Запуск идёт с ярлыка или из чужого профиля Windows. Проверьте ярлык, а потом профиль пользователя, под которым запускают 1С. Если 1С открывается на терминальном сервере, список лежит в профиле на терминале, а не на вашем компьютере.
Путь есть, а файла 1Cv8.1CD там нет. Возможны три причины: запись устарела и база давно переехала; путь ведёт на сетевой диск, который сейчас не подключён; база на самом деле клиент-серверная, а вы смотрите на старую локальную копию. Сравните с тем, что показывает СтрокаСоединенияИнформационнойБазы() из работающего сеанса.
Папка есть, но подключиться к ней нельзя. Нужны права на чтение и запись для всех пользователей базы. Если путь сетевой, он должен открываться с компьютера пользователя под его учётной записью.
В консоли нет нужной базы. Возможно, вы смотрите не тот кластер или не тот сервер. На одном сервере может быть несколько кластеров на разных портах, а в организации — несколько серверов 1С.
Расхождение имён. В окне запуска база называется одним образом, на кластере — другим, в СУБД — третьим. Ориентируйтесь не на имя, а на строку соединения.
Частые вопросы
Можно ли узнать расположение базы, если 1С не запускается?
ibases.v8i в профиле пользователя или свойства ярлыка. Адрес записан там текстом, 1С для этого запускать не нужно.Как понять, что база у нас файловая, а не серверная?
Что такое строка соединения и откуда её взять?
File="путь"; для файловой базы или Srvr="сервер";Ref="имя"; для серверной. Её возвращает функция СтрокаСоединенияИнформационнойБазы() из запущенного сеанса или она записана в ibases.v8i.