Где хранится база 1С и как узнать строку подключения к ней

· 9 мин

Содержание

Адрес базы 1С быстрее всего найти в окне запуска: выделите базу в списке, и внизу окна появится строка подключения. Для файловой базы это File="D:\Bases\Buh" — путь к папке с файлом 1Cv8.1CD. Для серверной — Srvr="srv1c";Ref="buh", то есть имя сервера 1С и имя базы в кластере.

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

Три вида адреса базы 1С и как их отличить

Прежде чем искать, полезно понимать, что именно вы ищете. Строка подключения бывает трёх видов:

Вид базыКак выглядит строкаЧто означает
📁 ФайловаяFile="D:\Bases\Buh";Папка, где лежит 1Cv8.1CD
🖥 Клиент-сервернаяSrvr="srv1c";Ref="buh";Сервер 1С и имя базы в его кластере
🌐 Веб-публикацияws="http://srv/buh";Адрес публикации на веб-сервере

У серверной базы три уровня имён, и их часто путают:

  • 🔹 Сервер 1С (Srvr) — компьютер, где работает агент сервера 1С. Иногда с портом: srv1c:1541.
  • 🔹 Имя базы в кластере (Ref) — как база зарегистрирована в 1С.
  • 🔹 Сервер СУБД и база данных — где физически лежат таблицы (MS SQL Server или PostgreSQL). Имя базы данных СУБД может не совпадать с Ref.

У файловой базы на сетевой папке адрес бывает двух видов: через букву диска (File="Z:\Buh") или через сетевое имя (File="\\fs01\Bases\Buh"). Буква диска работает только у тех, у кого этот диск подключён. Сетевое имя надёжнее: оно одинаково на всех компьютерах. Если у одного пользователя база открывается, а у соседа «не найдена» — сравните именно этот момент.

Для переноса базы, бэкапа средствами SQL или подключения нового пользователя нужны разные уровни. Пользователю достаточно Srvr и Ref. Администратору, который делает резервную копию в SQL, нужен третий уровень.

Адрес в окне запуска 1С

Это способ для любого пользователя, права администратора не нужны.

  1. Запустите 1С обычным ярлыком.
  2. В списке информационных баз один раз щёлкните нужную базу — не открывайте её.
  3. Посмотрите на нижнюю часть окна: там выводится строка подключения.
  4. Если строка обрезана, нажмите кнопку Изменить…. На первом шаге мастера видно расположение базы, на следующем — путь к папке или поля «Кластер серверов 1С:Предприятия» и «Имя информационной базы в кластере».
  5. В мастере нажмите Отмена, чтобы ничего не поменять.

Строку из окна запуска можно скопировать целиком, если в мастере изменения выделить поле с путём и нажать Ctrl+C. Так удобно передать адрес администратору без ошибок в слешах и кавычках.

Если базы нет в списке, а 1С открывается ярлыком с рабочего стола — адрес прописан в самом ярлыке. Об этом раздел ниже.

Как узнать адрес из уже открытой базы

Когда база уже запущена, закрывать её не нужно.

Через «О программе»

В интерфейсе «Такси» откройте главное меню (значок с тремя полосками или стрелкой в заголовке окна) и выберите Справка → О программе. В открывшемся окне есть строка «Информационная база» или блок с параметрами подключения — там та же строка File=… или Srvr=…;Ref=….

Там же видны версия платформы и конфигурации, имя пользователя и режим запуска. Эту же форму удобно отправлять в техподдержку: всё нужное на одном экране.

В Конфигураторе путь тот же: Справка → О программе.

Встроенной функцией

Если вы работаете в Конфигураторе или есть права на внешние обработки, строку возвращает функция платформы:

Сообщить(СтрокаСоединенияИнформационнойБазы());

Результат — та же строка вида File="D:\Bases\Buh"; или Srvr="srv1c";Ref="buh";. Этот приём полезен в обработках, которые должны вести себя по-разному в файловой и серверной базе.

Путь к базе в свойствах ярлыка

Многие администраторы раздают пользователям ярлыки, которые сразу открывают нужную базу. Тогда адрес хранится в параметрах ярлыка.

  1. Щёлкните ярлык правой кнопкой мыши → Свойства.
  2. Перейдите на вкладку Ярлык.
  3. Изучите поле Объект.

Что можно там увидеть:

"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"D:\Bases\Buh"
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" ENTERPRISE /S"srv1c\buh"
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /IBName"Бухгалтерия"
  • 📁 /F"путь" — файловая база, в кавычках путь к папке.
  • 🖥 /S"сервер\база" — серверная база: до обратного слеша сервер 1С, после — имя базы в кластере.
  • 📋 /IBName"имя" — ярлык ссылается на базу по её названию в списке. Сам адрес тогда ищите в окне запуска или в файле ibases.v8i.

Если в поле Объект есть параметры /N и /P — это логин и пароль пользователя 1С открытым текстом. Такой ярлык лучше не пересылать и не выкладывать на скриншотах.

Файл списка баз ibases.v8i

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

Где лежит файл:

%APPDATA%\1C\1CEStart\ibases.v8i

Вставьте эту строку в адресную строку Проводника или в окно Win+R — откроется папка текущего пользователя. У каждого пользователя Windows свой список.

Внутри файла каждая база — отдельный блок:

[Бухгалтерия предприятия]
ID=3f2a1c4e-...
Connect=File="D:\Bases\Buh";
Folder=/
Version=8.3

Нужна строка Connect=. Её формат — тот же, что в таблице в начале.

Если базы в файле нет

Список может подгружаться из общего файла на сервере. Это настраивается в файле 1cestart.cfg, который лежит в той же папке %APPDATA%\1C\1CEStart\. Ищите в нём строки CommonInfoBases= — они указывают на общие .v8i-файлы, например на сетевой папке. Откройте указанный файл и найдите Connect= там.

Общие настройки для всех пользователей компьютера бывают ещё в %ALLUSERSPROFILE%\1C\1CEStart\1cestart.cfg.

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

Строка Srvr="srv1c";Ref="buh" говорит только, где работает сервер 1С. Чтобы узнать сервер СУБД, тип СУБД и имя базы данных, нужны права администратора кластера и права администратора в самой информационной базе.

Через консоль администрирования серверов 1С

  1. Откройте оснастку «Администрирование серверов 1С:Предприятия». Её ярлык создаёт установщик платформы на сервере или на компьютере администратора. Если оснастка не открывается, её нужно зарегистрировать через radmin.dll — отдельная процедура.
  2. Если центрального сервера нет в дереве, добавьте его: правой кнопкой по корню → Создать → Центральный сервер 1С:Предприятия, укажите имя компьютера и порт агента (по умолчанию 1540).
  3. Раскройте сервер → Кластеры → нужный кластер → Информационные базы.
  4. Щёлкните базу правой кнопкой → Свойства. Консоль спросит логин и пароль администратора этой информационной базы.

В окне свойств есть поля:

  • 🗄 Сервер баз данных — имя SQL-сервера, иногда с именованным экземпляром: sqlsrv\MSSQL2019.
  • 🗄 Тип СУБД — MSSQLServer, PostgreSQL и другие.
  • 🗄 База данных — имя базы в СУБД. Именно его ищите в SQL Server Management Studio или pgAdmin.
  • 👤 Пользователь сервера БД — учётная запись, под которой 1С подключается к СУБД. Пароль не показывается.

В этом окне ничего не меняйте и нажимайте Отмена. Изменение имени базы данных или сервера СУБД отключит базу у всех пользователей сразу.

Проверка со стороны СУБД

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

MS SQL Server:

SELECT name, create_date FROM sys.databases ORDER BY name;

PostgreSQL (в psql):

SELECT datname FROM pg_database ORDER BY datname;

Этот способ подсказывает кандидатов, но не доказывает связь. Окончательный ответ даёт только свойство «База данных» в кластере 1С.

Поиск из командной строки и через rac

Когда графической консоли нет — например, сервер 1С на Linux, — работают командная строка и утилита rac.

Найти файловые базы на диске

Файловая база — это папка с файлом 1Cv8.1CD. Найти все такие папки на диске D:

dir D:\1Cv8.1CD /s /b

То же в PowerShell, с размером файла:

Get-ChildItem -Path D:\ -Filter 1Cv8.1CD -Recurse -ErrorAction SilentlyContinue |
  Select-Object FullName, @{n='Размер, ГБ';e={[math]::Round($_.Length/1GB,2)}}, LastWriteTime

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

Быстро вывести все адреса из списка баз пользователя:

findstr /i "Connect=" "%APPDATA%\1C\1CEStart\ibases.v8i"

Параметры серверной базы через rac

rac — консольный клиент сервера администрирования. Он лежит в папке bin платформы, а работает через службу ras (по умолчанию порт 1545). Если ras не запущен, команды вернут ошибку подключения — запустите службу или попросите администратора сервера.

Порядок такой:

rac cluster list
rac infobase summary list --cluster=<UUID кластера>
rac infobase info --cluster=<UUID кластера> --infobase=<UUID базы> --infobase-user=Администратор --infobase-pwd=пароль
  1. Первая команда выводит кластеры и их идентификаторы.
  2. Вторая — список баз кластера с идентификаторами и именами.
  3. Третья — подробности по базе. Ищите строки dbms (тип СУБД), db-server (сервер СУБД), db-name (имя базы данных) и db-user.

Если на кластере задан администратор, к командам добавьте --cluster-user и --cluster-pwd. Полный список параметров для вашей версии платформы показывает rac help infobase.

Адрес сервера ras пишется первым аргументом: rac srv1c:1545 cluster list. Без него rac подключается к localhost:1545.

Реестр Windows и файлы сервера 1С

Здесь есть распространённое заблуждение. В платформе 8.3 список информационных баз не хранится в реестре Windows и нет стандартного файла connections.cfg с адресами баз. Клиентский список — в ibases.v8i, серверный — в файлах кластера. Реестр помогает только найти, где эти файлы лежат.

Что даёт реестр

Агент сервера 1С работает как служба Windows. Её параметры запуска хранятся в разделе:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

Найдите подраздел, имя которого начинается с 1C:Enterprise 8.3 Server Agent. В параметре ImagePath записана командная строка службы, например:

"C:\Program Files\1cv8\8.3.24.1548\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo"

Отсюда видно:

  • 🔢 -port — порт агента (1540). С ним подключается консоль.
  • 🔢 -regport — порт менеджера кластера (1541).
  • 🔢 -range — диапазон портов рабочих процессов.
  • 📂 -d — каталог srvinfo, где сервер хранит свои данные.

Тот же ImagePath проще увидеть без редактора реестра: services.msc → свойства службы агента → поле «Исполняемый файл».

Каталог srvinfo и реестр кластера

В каталоге из параметра -d есть папка вида reg_1541 (по номеру порта менеджера кластера). В ней лежит файл 1CV8Clst.lst — реестр кластера. В нём перечислены информационные базы вместе с сервером СУБД и именем базы данных.

Файл служебный, формат не предназначен для ручного чтения. Открывать его стоит только копией в Блокноте, чтобы найти имя базы, если консоль и rac недоступны.

Не редактируйте и не удаляйте 1CV8Clst.lst на работающем сервере: повреждённый файл означает, что кластер потеряет список баз и все пользователи отключатся. Нужна копия — копируйте файл, но не трогайте оригинал.

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

Чем адрес базы отличается от пути к папке с данными?
Для файловой базы это одно и то же: адрес — папка с файлом 1Cv8.1CD. Для серверной адрес — пара «сервер 1С + имя базы в кластере», а данные лежат в СУБД на другом, возможно, компьютере.
Можно ли подключиться к серверной базе, зная только имя SQL-базы?
Нет. Клиент 1С подключается к серверу 1С, а не к СУБД напрямую. Нужны имя сервера 1С и имя информационной базы в кластере.
Почему у коллеги в списке есть база, а у меня нет?
Список баз хранится отдельно для каждого пользователя Windows. Попросите у коллеги строку Connect= из его ibases.v8i или добавьте базу кнопкой «Добавить» в окне запуска по этому адресу.
Как узнать адрес базы, если 1С не запускается?
Откройте Блокнотом файл ibases.v8i в папке %APPDATA%\1C\1CEStart. Если там пусто, проверьте свойства ярлыка и строки CommonInfoBases= в 1cestart.cfg.
Где адрес базы, опубликованной на веб-сервере?
В строке подключения будет ws= с http- или https-адресом. Его же можно открыть в браузере как веб-клиент, если публикация это разрешает.