К статье
Практический материал

Администрирование · 11 мин

Сервер баз данных 1С: что указывать при подключении базы

Что указывать в поле «Сервер баз данных» при создании базы 1С: имя или IP сервера, экземпляр SQL Server, кластер 1С, типичные ошибки и проверка подключения.

При создании или подключении клиент-серверной информационной базы 1С установщик просит заполнить поле «Сервер баз данных», и именно здесь чаще всего возникают ошибки. В это поле вводится не адрес компьютера с платформой 1С, а имя или IP-адрес сервера, на котором работает СУБД — Microsoft SQL Server, PostgreSQL, IBM DB2 или Oracle. Если база развёрнута на том же компьютере, что и сервер 1С, указывается имя этой машины или localhost.

Путаница возникает из-за того, что при работе 1С в клиент-серверном варианте задействованы сразу два «сервера»: сервер СУБД, где физически хранятся данные, и сервер 1С:Предприятия (кластер), через который клиенты подключаются к базе. В диалоге добавления базы эти параметры указываются в разных полях, и подставлять их друг за друга нельзя.

Ниже разобрано, что именно писать в каждое поле, как оформлять адрес для разных СУБД, как проверить, что сервер доступен, и какие ошибки встречаются чаще всего.

Что такое сервер баз данных в архитектуре 1С

В клиент-серверном варианте работы 1С данные хранятся не в файле 1Cv8.1CD, а в базе данных под управлением отдельной СУБД. Сервер баз данных — это компьютер (физический или виртуальный), на котором установлена и запущена эта СУБД. Сервер 1С:Предприятия обращается к СУБД по сети, выполняет запросы и передаёт результаты клиентским приложениям.

Поэтому в диалоге создания базы есть два независимых параметра: «Кластер серверов 1С:Предприятия» (там работает агент сервера 1С) и «Сервер баз данных» (там работает СУБД). На небольших внедрениях обе роли совмещают на одной машине — тогда в обоих полях фактически указывается один и тот же компьютер, но смысл параметров остаётся разным.

Что указывать в поле «Сервер баз данных»

В поле вводится сетевое имя компьютера с СУБД или его IP-адрес. Оба варианта рабочие, но есть нюансы: имя удобнее читать и оно не меняется при перенастройке сети, а IP-адрес помогает, когда в сети есть проблемы с разрешением имён (DNS). Если имя сервера не «пингуется» с машины, где работает сервер 1С, подключение не установится.

Если СУБД установлена на том же компьютере, что и сервер 1С, допустимо указать localhost или 127.0.0.1. Однако при вероятности будущего переноса СУБД на отдельную машину лучше сразу использовать реальное сетевое имя сервера — тогда при миграции не придётся менять настройки базы.

Формат для Microsoft SQL Server

SQL Server часто устанавливается как именованный экземпляр (например, SQLEXPRESS). В этом случае адрес записывается через обратный слэш: SERVERNAME\SQLEXPRESS. Если используется экземпляр по умолчанию, достаточно одного имени сервера. При нестандартном порте его можно указать через запятую: SERVERNAME,1433.

Формат для PostgreSQL и других СУБД

Для PostgreSQL указывается имя или IP сервера, а порт (по умолчанию 5432) задаётся отдельным полем в диалоге создания базы, если он отличается от стандартного. Аналогично для IBM DB2 и Oracle: основное поле содержит адрес сервера, специфичные параметры подключения заполняются в соседних полях формы.

Варианты указания сервера

Сетевое имя (например, SRV-DB)

Удобно читается, переживает смену IP. Требует исправного DNS или записи в hosts.

IP-адрес (например, 192.168.1.10)

Работает без DNS, но ломается при смене адреса сервера. Подходит для диагностики.

localhost / 127.0.0.1

Только если СУБД и сервер 1С на одной машине. Усложнит будущий перенос СУБД.

Имя с экземпляром (SRV-DB\SQLEXPRESS)

Обязательно для именованных экземпляров SQL Server. Без указания экземпляра подключение не установится.

Что указывать в поле «Кластер серверов 1С»

В поле кластера вводится имя компьютера, где установлен и запущен сервер 1С:Предприятия (служба «Агент сервера 1С:Предприятия»). Если порт агента нестандартный, он указывается через двоеточие, например SRV-1C:1640. По умолчанию используется порт 1540, и его можно не писать.

Типичная ситуация для небольшой организации: один сервер выполняет обе роли. Тогда в обоих полях указывается одно и то же имя, например SRV-1C, — и это корректно. Ошибкой будет указать в поле кластера адрес SQL Server, если агент 1С там не установлен: мастер не сможет зарегистрировать базу в кластере.

Как создать базу: порядок действий

Создание клиент-серверной базы выполняется из диалога запуска 1С:Предприятия кнопкой «Добавить» с выбором варианта «Создание новой информационной базы» и типа расположения «На сервере 1С:Предприятия». Дальше заполняются поля подключения.

Порядок действий
  1. 1
    Откройте стартовое окно 1С, нажмите «Добавить» → «Создание новой информационной базы»
  2. 2
    Выберите шаблон конфигурации или пустую базу
  3. 3
    Укажите тип расположения «На сервере 1С:Предприятия»
  4. 4
    В поле «Кластер серверов» введите имя сервера с агентом 1С (порт 1540 по умолчанию)
  5. 5
    В поле «Сервер баз данных» введите имя или IP сервера СУБД, для именованного экземпляра SQL Server — формат СЕРВЕР\ЭКЗЕМПЛЯР
  6. 6
    Выберите тип СУБД, задайте имя базы данных и учётные данные пользователя СУБД с правами на создание баз
  7. 7
    Отметьте «Создать базу данных в случае её отсутствия», если база ещё не создана в СУБД
  8. 8
    Нажмите «Готово» и дождитесь регистрации базы в кластере и создания базы на сервере СУБД

Учётная запись СУБД, которую вы указываете при создании базы, должна обладать правами на создание баз данных (для SQL Server обычно это роль sysadmin или сочетание dbcreator с дополнительными правами). После создания базы сервер 1С будет работать с ней от имени этого же пользователя, поэтому пароль нельзя менять без обновления параметров базы в консоли кластера.

Как проверить, что сервер указан правильно

До заполнения диалога полезно убедиться, что сервер СУБД доступен с машины, где работает сервер 1С. Проверка выполняется сетевыми утилитами и попыткой подключения штатными средствами СУБД.

cmd
ping SRV-DB
:: проверка доступности порта SQL Server
powershell Test-NetConnection SRV-DB -Port 1433

Если имя не разрешается в адрес, проверьте DNS или добавьте запись в файл hosts на сервере 1С. Если имя пингуется, но порт закрыт, проверьте, запущена ли служба СУБД, включён ли протокол TCP/IP в её настройках (для SQL Server — в SQL Server Configuration Manager) и не блокирует ли порт брандмауэр.

Контрольные точки

Как проверить результат

Разрешение имени
Норма

ping по имени возвращает ответы с правильного IP

Тревожный признак

«Не удается обнаружить узел» — проблема DNS, используйте IP или hosts

Доступность порта СУБД
Норма

Test-NetConnection показывает TcpTestSucceeded: True

Тревожный признак

Порт закрыт — служба СУБД остановлена, TCP/IP отключён или мешает брандмауэр

Создание базы из диалога 1С
Норма

База появилась в списке кластера и открывается конфигуратором

Тревожный признак

Ошибка «сервер баз данных не обнаружен» или отказ в доступе — неверный адрес или недостаточно прав

Типичные ошибки и их причины

Самая частая ошибка — «Сервер баз данных не обнаружен». Она означает, что сервер 1С не смог подключиться к СУБД: неверно указано имя, не запущена служба СУБД, закрыт порт или для именованного экземпляра SQL Server не запущена служба SQL Server Browser. Проверяйте причину в этом порядке.

Типичные ошибки
01
Указание в поле «Сервер баз данных» адреса кластера 1С вместо сервера СУБД — база не создаётся, хотя кластер определяется
02
Пропуск имени экземпляра SQL Server (SRV вместо SRV\SQLEXPRESS) — ошибка подключения, так как экземпляр по умолчанию отсутствует
03
Использование localhost при разнесённых ролях — сервер 1С ищет СУБД на своей машине и не находит её
04
Создание базы под пользователем СУБД без прав dbcreator — ошибка доступа на этапе создания базы
05
Отключённый протокол TCP/IP в настройках SQL Server — локальные подключения работают, а сетевые нет

Отдельная группа проблем связана с разрядностью и версией СУБД: платформа 1С предъявляет требования к поддерживаемым версиям SQL Server и PostgreSQL. Перед развёртыванием сверьтесь с системными требованиями вашей версии платформы — неподдерживаемая версия СУБД может работать нестабильно или не работать вовсе.

Когда роли разнесены и что меняется

В крупных внедрениях сервер СУБД и сервер 1С размещают на разных машинах для распределения нагрузки. Тогда в поле «Сервер баз данных» указывается адрес выделенного сервера СУБД, а в поле кластера — адрес сервера 1С. При этом критично, чтобы между этими машинами была быстрая и стабильная сеть: сервер 1С интенсивно обменивается данными с СУБД, и задержки напрямую влияют на скорость работы пользователей.

При разнесении ролей убедитесь, что учётная запись службы агента сервера 1С имеет сетевой доступ к серверу СУБД, а брандмауэры на обеих машинах пропускают трафик на порт СУБД. Схема «всё на одном сервере» проще в настройке, но ограничена ресурсами одной машины; схема с разнесением масштабируется, но требует аккуратной сетевой настройки.

Маршрут решения

Как выбрать действие

СУБД и сервер 1С на одной машинеУкажите в обоих полях имя этого сервера; localhost допустим, но реальное имя удобнее для будущих переносов
SQL Server установлен как именованный экземплярПишите СЕРВЕР\ЭКЗЕМПЛЯР и проверьте, что служба SQL Server Browser запущена
Имя сервера не пингуется с машины сервера 1СИспользуйте IP-адрес или добавьте запись в hosts, затем повторите создание базы
Порт СУБД закрыт при живом pingПроверьте службу СУБД, включение TCP/IP и правила брандмауэра
Ошибка доступа при создании базыПроверьте права пользователя СУБД — нужны права на создание базы данных

Часто задаваемые вопросы

Что указывать в поле «Сервер баз данных», если база файловая?

Ничего — для файловой базы это поле отсутствует. При добавлении базы выбирается тип «На данном компьютере или на компьютере в локальной сети» и указывается каталог с файлом 1Cv8.1CD. Поля сервера СУБД и кластера появляются только для клиент-серверного варианта.

Можно ли указать IP-адрес вместо имени сервера?

Да, IP-адрес работает и иногда помогает обойти проблемы с DNS. Недостаток в том, что при смене адреса сервера придётся обновлять настройки базы в консоли кластера. Для постоянной работы предпочтительнее имя сервера.

Что писать, если SQL Server установлен с экземпляром по умолчанию?

Достаточно одного имени или IP-адреса сервера без указания экземпляра. Формат СЕРВЕР\ЭКЗЕМПЛЯР нужен только для именованных экземпляров, например SQLEXPRESS.

Почему возникает ошибка «Сервер баз данных не обнаружен», хотя сервер пингуется?

Ping проверяет только доступность машины, но не СУБД. Частые причины: остановлена служба SQL Server или PostgreSQL, отключён протокол TCP/IP, порт закрыт брандмауэром, либо для именованного экземпляра не работает служба SQL Server Browser. Проверяйте доступность порта СУБД, например через Test-NetConnection.

Нужно ли указывать порт в поле «Сервер баз данных»?

Для SQL Server нестандартный порт можно указать через запятую (СЕРВЕР,1433). Для PostgreSQL порт задаётся отдельным полем диалога создания базы. Если используются стандартные порты, указывать их не требуется.

Что делать, если сервер СУБД переехал на другую машину?

Откройте консоль администрирования серверов 1С, найдите информационную базу, откройте её свойства и измените параметр «Сервер баз данных» на новый адрес. Предварительно перенесите саму базу данных средствами СУБД (резервная копия и восстановление) и убедитесь, что пользователь СУБД с теми же учётными данными существует на новом сервере.

Итог

Что важно запомнить

В поле «Сервер баз данных» указывается имя или IP машины с СУБД, а не сервера 1С. Для именованного экземпляра SQL Server используется формат СЕРВЕР\ЭКЗЕМПЛЯР. Перед созданием базы проверьте разрешение имени, доступность порта СУБД и права пользователя, а любые изменения параметров рабочей базы выполняйте только после резервного копирования.