Где хранится база 1С и как узнать строку подключения к ней
Содержание
Адрес базы 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С:Предприятия» и «Имя информационной базы в кластере». - В мастере нажмите
Отмена, чтобы ничего не поменять.
Строку из окна запуска можно скопировать целиком, если в мастере изменения выделить поле с путём и нажать Ctrl+C. Так удобно передать адрес администратору без ошибок в слешах и кавычках.
Если базы нет в списке, а 1С открывается ярлыком с рабочего стола — адрес прописан в самом ярлыке. Об этом раздел ниже.
Как узнать адрес из уже открытой базы
Когда база уже запущена, закрывать её не нужно.
Через «О программе»
В интерфейсе «Такси» откройте главное меню (значок с тремя полосками или стрелкой в заголовке окна) и выберите Справка → О программе. В открывшемся окне есть строка «Информационная база» или блок с параметрами подключения — там та же строка File=… или Srvr=…;Ref=….
Там же видны версия платформы и конфигурации, имя пользователя и режим запуска. Эту же форму удобно отправлять в техподдержку: всё нужное на одном экране.
В Конфигураторе путь тот же: Справка → О программе.
Встроенной функцией
Если вы работаете в Конфигураторе или есть права на внешние обработки, строку возвращает функция платформы:
Сообщить(СтрокаСоединенияИнформационнойБазы());
Результат — та же строка вида File="D:\Bases\Buh"; или Srvr="srv1c";Ref="buh";. Этот приём полезен в обработках, которые должны вести себя по-разному в файловой и серверной базе.
Путь к базе в свойствах ярлыка
Многие администраторы раздают пользователям ярлыки, которые сразу открывают нужную базу. Тогда адрес хранится в параметрах ярлыка.
- Щёлкните ярлык правой кнопкой мыши →
Свойства. - Перейдите на вкладку
Ярлык. - Изучите поле
Объект.
Что можно там увидеть:
"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С:Предприятия». Её ярлык создаёт установщик платформы на сервере или на компьютере администратора. Если оснастка не открывается, её нужно зарегистрировать через
radmin.dll— отдельная процедура. - Если центрального сервера нет в дереве, добавьте его: правой кнопкой по корню →
Создать → Центральный сервер 1С:Предприятия, укажите имя компьютера и порт агента (по умолчанию 1540). - Раскройте сервер →
Кластеры→ нужный кластер →Информационные базы. - Щёлкните базу правой кнопкой →
Свойства. Консоль спросит логин и пароль администратора этой информационной базы.
В окне свойств есть поля:
- 🗄 Сервер баз данных — имя 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=пароль
- Первая команда выводит кластеры и их идентификаторы.
- Вторая — список баз кластера с идентификаторами и именами.
- Третья — подробности по базе. Ищите строки
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 на работающем сервере: повреждённый файл означает, что кластер потеряет список баз и все пользователи отключатся. Нужна копия — копируйте файл, но не трогайте оригинал.