Администрирование · 11 мин
Как узнать, какой сервер баз данных использует 1С
Как узнать сервер баз данных 1С: через строку подключения, кластер серверов 1С, консоль администрирования и список баз. Пошаговые инструкции и типичные ошибки.
Чтобы узнать, на каком сервере расположена база данных 1С, достаточно посмотреть параметры подключения информационной базы — они видны прямо в окне запуска 1С или в свойствах базы в консоли кластера. Однако важно различать два разных «сервера»: сервер приложений 1С (кластер) и собственно сервер СУБД (MS SQL Server, PostgreSQL, Oracle или IBM Db2), где физически хранятся данные. Часто это разные машины, и путаница между ними — самая распространённая причина ошибок при обслуживании.
Способ проверки зависит от режима работы базы: файловый или клиент-серверный. В файловом варианте никакого сервера СУБД нет — данные лежат в файле 1Cv8.1CD в сетевой папке. В клиент-серверном варианте параметры подключения хранятся в нескольких местах: в списке баз пользователя, в свойствах базы в консоли администрирования кластера и в настройках самой СУБД.
Ниже разобраны все практические способы определить сервер баз данных 1С — от простого просмотра строки подключения до анализа настроек на стороне SQL-сервера, а также типичные ошибки и способы проверить корректность найденных данных.
Как определить режим работы базы: файловый или клиент-серверный
Прежде чем искать сервер, убедитесь, что он вообще существует. Откройте окно запуска 1С (ярлык «1С Предприятие»), выделите нужную базу в списке и посмотрите на строку внизу окна. Если там указан путь вида \\Server\Bases\Trade\ или локальный каталог — это файловый режим, и сервера баз данных у такой базы нет.
Если внизу окна указано что-то вроде srv-1c:1541\Trade или Srvr="srv-1c";Ref="Trade"; — база работает в клиент-серверном режиме, и дальше нужно выяснить два параметра: имя сервера приложений 1С и имя сервера СУБД.
Тот же признак виден внутри запущенной программы: откройте «Файл → Сведения для технической поддержки» (в некоторых конфигурациях — «Администрирование → Обслуживание») и найдите строку «Режим работы». Там будет указано «файловый» или «клиент-серверный», а также строка соединения с базой данных.
Как узнать сервер через список баз и строку подключения
Самый быстрый способ — посмотреть параметры в окне запуска. Выделите базу, нажмите кнопку «Настройка» (или правой кнопкой мыши → «Изменить») и пролистайте диалог до страницы с параметрами. Для клиент-серверной базы там будут поля «Кластер серверов 1С:Предприятия» и «Имя информационной базы». Поле кластера — это сервер приложений, но не сервер СУБД.
Строка подключения хранится в файле списка баз ibases.v8i, который лежит в профиле пользователя: %APPDATA%\1C\1CEStart\ibases.v8i. Откройте его блокнотом и найдите секцию нужной базы — параметр Connect=Srvr="...";Ref="..."; покажет сервер кластера и имя базы.
Если база подключена через веб-сервер (тонкий клиент по HTTP), в строке будет адрес вида ws=http://server/base. В этом случае параметры СУБД скрыты на стороне веб-сервера, и узнать их можно только из консоли кластера или у администратора, настраивавшего публикацию.
[Trade]
Connect=Srvr="srv-1c";Ref="trade_db";
App=ThickClientКак узнать сервер СУБД через консоль администрирования кластера
Именно в консоли кластера хранится главный ответ — адрес сервера баз данных. Откройте оснастку «Администрирование серверов 1С:Предприятия» на машине, где установлен сервер 1С (или подключитесь к нему удалённо, добавив центральный сервер в консоль). Раскройте дерево: «Кластеры → Локальный кластер → Информационные базы».
Выделите нужную базу и откройте её свойства двойным щелчком. В диалоге вы увидите ключевые поля: «Сервер баз данных» (имя или IP-адрес SQL-сервера), «СУБД» (тип: MS SQL Server, PostgreSQL, Oracle, IBM Db2), «Имя базы данных» и «Пользователь/пароль сервера БД» — учётную запись, под которой кластер обращается к СУБД.
Обратите внимание: если в поле «Сервер баз данных» указано просто имя без экземпляра, а на SQL Server используется именованный экземпляр, фактический адрес может включать имя экземпляра, например sqlsrv\INSTANCE1. Это важно при настройке резервного копирования напрямую средствами СУБД.
- 1Откройте оснастку «Администрирование серверов 1С:Предприятия»
- 2Добавьте центральный сервер, если консоль пустая (правой кнопкой → «Создать → Центральный сервер 1С:Предприятия 8.3»)
- 3Раскройте «Кластеры → Локальный кластер → Информационные базы»
- 4Откройте свойства нужной базы двойным щелчком
- 5Запишите значения полей «Сервер баз данных», «СУБД» и «Имя базы данных»
- 6Проверьте доступность сервера СУБД командой ping или telnet по порту СУБД
Как проверить сервер со стороны самой СУБД
Когда консоль кластера недоступна, подтвердить расположение базы можно на стороне SQL-сервера. Для MS SQL Server откройте SQL Server Management Studio, подключитесь к предполагаемому серверу и разверните узел «Databases» — имя базы должно совпадать с тем, что указано в свойствах информационной базы кластера (параметр Ref обычно совпадает с именем базы в СУБД, но не всегда).
Для PostgreSQL список баз виден в pgAdmin или командой psql -l. Если вы не знаете, на каком сервере искать базу, посмотрите сетевые подключения на сервере 1С: процесс rphost устанавливает постоянные соединения с сервером СУБД, и их видно командой netstat -ano с фильтрацией по PID рабочих процессов кластера.
netstat -ano | findstr ESTABLISHED | findstr "PID_процесса_rphost"Этот метод особенно полезен в аварийных ситуациях, когда консоль кластера не открывается, но сам сервер 1С работает: по внешним соединениям rphost вы однозначно определите IP-адрес и порт сервера баз данных (для MS SQL по умолчанию 1433, для PostgreSQL — 5432).
Как узнать сервер изнутри программы 1С
Если у вас есть доступ в базу с правами администратора, строку соединения можно посмотреть прямо в интерфейсе. В типовых конфигурациях: «Администрирование → Обслуживание → Сведения для технической поддержки» либо «Файл → Сведения для технической поддержки». В отчёте будет строка соединения с параметрами Srvr и Ref.
Разработчику доступен и программный способ — функция СтрокаСоединенияИнформационнойБазы() возвращает полную строку подключения. Её можно выполнить через обработку или консоль кода.
Сообщить(СтрокаСоединенияИнформационнойБазы());
// Результат: Srvr="srv-1c";Ref="trade_db";Учтите, что строка соединения показывает сервер кластера, а не сервер СУБД. Если вам нужен именно SQL-сервер, а доступа к консоли кластера нет, придётся запросить эти данные у администратора сервера или искать по сетевым соединениям, как описано выше.
Частые ошибки и ограничения при определении сервера
Главная ошибка — путать сервер кластера 1С и сервер СУБД. Они могут совпадать (обе службы на одной машине в небольших организациях), но в нагруженных системах это всегда разные серверы. Если вы настраиваете резервное копирование средствами SQL и берёте адрес из строки подключения пользователя, рискуете подключиться не туда.
Вторая ошибка — опираться на имя базы в списке запуска. Название в списке пользователя — произвольная подпись, она может не совпадать ни с Ref, ни с именем базы в СУБД. Ориентируйтесь только на параметры подключения.
Ограничение по правам тоже важно: если для кластера задан администратор, без его учётных данных консоль покажет структуру, но не откроет свойства баз. В этом случае остаются способы через строку соединения, netstat или запрос к владельцу инфраструктуры.
Как проверить, что найденный сервер — правильный
После того как вы определили адрес сервера СУБД, убедитесь, что он актуален. Проверьте сетевую доступность: ping имя_сервера и подключение к порту СУБД (например, telnet sqlsrv 1433). Затем подключитесь средствами СУБД и убедитесь, что база с нужным именем существует и находится в состоянии ONLINE.
Дополнительная проверка — сверить дату последнего изменения данных: если база в СУБД давно не обновлялась, а пользователи активно работают, вероятно, вы нашли старую копию, а рабочая база расположена на другом сервере.
Как проверить результат
ping проходит, порт СУБД отвечает
Сервер не пингуется или порт закрыт — проверяйте имя, DNS и брандмауэр
База с именем из свойств кластера есть в списке и в статусе ONLINE
Базы нет — возможно, используется другой экземпляр или сервер
В таблицах есть свежие записи, совпадающие с работой пользователей
Данные устарели — найдена копия, а не рабочая база
Что важно запомнить
Сервер баз данных 1С указан в свойствах информационной базы в консоли администрирования кластера — поле «Сервер баз данных». Строка подключения в списке баз показывает только сервер кластера. Проверяйте найденный сервер доступностью порта СУБД и актуальностью данных, и не меняйте параметры подключения без резервной копии.
Частые вопросы
Где посмотреть сервер 1С, если нет доступа к серверу администрирования?
Откройте файл списка баз %APPDATA%\1C\1CEStart\ibases.v8i в блокноте и найдите параметр Connect нужной базы — там указан сервер кластера. Также строку соединения видно в программе: «Файл → Сведения для технической поддержки». Адрес сервера СУБД без доступа к консоли можно определить по сетевым соединениям процесса rphost на сервере 1С.
Совпадают ли сервер 1С и сервер баз данных?
Это разные компоненты. Сервер 1С (кластер) обрабатывает подключения пользователей, а сервер СУБД хранит данные. В небольших организациях обе службы часто стоят на одной машине, в крупных — всегда разнесены. Точный адрес сервера СУБД виден только в свойствах информационной базы в консоли кластера.
Как узнать сервер базы, если 1С работает через веб-сервер?
При подключении по HTTP строка подключения содержит только адрес публикации, параметры СУБД скрыты. Нужные данные есть в консоли администрирования кластера на сервере 1С либо у администратора, выполнявшего публикацию. Со стороны клиента определить сервер СУБД невозможно.
Что делать, если в консоли кластера не видно информационных баз?
Убедитесь, что добавлен правильный центральный сервер и служба агента сервера 1С запущена. Если при открытии свойств базы запрашивается пароль — для кластера задан администратор, и без его учётных данных свойства недоступны. Проверьте также, что версия консоли совпадает с версией сервера 1С, иначе подключение может не работать.
Как понять, какая СУБД используется: MS SQL или PostgreSQL?
Тип СУБД указан в свойствах информационной базы в консоли кластера — поле «СУБД». Косвенный признак без доступа к консоли — открытые порты на сервере баз данных: 1433 характерен для MS SQL Server, 5432 — для PostgreSQL.
Опасно ли менять сервер баз данных в свойствах базы?
Да. Неверное значение поля «Сервер баз данных» или «Имя базы данных» немедленно делает базу недоступной для всех пользователей, а указание чужой базы может привести к подключению не к тем данным. Перед изменением зафиксируйте текущие значения, сделайте резервную копию и выполняйте работы в нерабочее время.