Подключение базы 1С к серверу 1С:Предприятия и к SQL-серверу
Содержание
Чтобы подключить 1С к серверу, нужно три вещи: запущенный сервер 1С:Предприятия, информационная база, созданная в его кластере, и клиентский компьютер с открытым путём до серверных портов. В списке баз клиента выбирается вариант «На сервере 1С:Предприятия», указываются имя сервера и имя базы. Остальное — подготовка и настройка прав.
Подключение проваливается чаще всего не на этом шаге, а раньше: закрыт порт, не совпали версии платформы или служба работает от пользователя без прав на каталог. Ниже — порядок действий от выбора режима до проверки, что всё работает.
Файловый режим или сервер: что выбрать до начала
Первым делом решите, нужен ли вам сервер вообще. От этого зависит всё остальное.
Файловый режим — база лежит файлом 1Cv8.1CD в папке, клиенты открывают её напрямую по сетевому пути. Сервер не нужен, настройка — на пять минут.
Клиент-серверный режим — базу ведёт СУБД (PostgreSQL, Microsoft SQL Server и др.), а работу с ней координирует сервер 1С:Предприятия. Клиенты общаются только с сервером 1С, к файлам базы доступа у них нет.
| Параметр | Файловая | Клиент-серверная |
|---|---|---|
| Число пользователей | до 5–10 комфортно | десятки и сотни |
| Размер базы | до нескольких ГБ | сотни ГБ и больше |
| Блокировки | на уровне таблиц, конфликты | построчные, меньше ожиданий |
| Доступ к данным | у любого, кто видит папку | только через сервер |
| Настройка | минимальная | нужен администратор |
Ориентир: если одновременно работает больше 8–10 человек или база растёт, а проведение документов тормозит, пора на сервер. Для малых баз с парой бухгалтеров сервер — лишняя сложность.
Есть и третий вариант — сервер 1С стоит отдельно, а клиенты подключаются через веб-публикацию в браузере или по терминальному доступу. О нём — в разделе про альтернативы.
Что нужно серверу: железо, система и версии
Сервер 1С:Предприятия состоит из нескольких процессов: ragent (агент сервера), rmngr (менеджер кластера) и rphost (рабочие процессы, в которых исполняется код). Базу данных держит отдельная СУБД — она может стоять на той же машине или на другой.
Ориентиры по ресурсам (примерно, зависят от нагрузки):
- 🧠 Память: около 1–2 ГБ на каждые 10 активных пользователей плюс запас под систему и СУБД. Для небольшой базы на 10–15 человек хватит 16 ГБ при совмещённых 1С и СУБД.
- ⚙️ Процессор: важна скорость одного ядра, а не их число. Проведение документов в основном однопоточное.
- 💾 Диск: SSD под базу и журналы СУБД. Это самое ощутимое улучшение по скорости.
- 🖥 Система: Windows Server или Linux. Для Linux потребуются свои пакеты сервера и СУБД, обычно PostgreSQL.
Версия платформы на клиенте и на сервере должна совпадать вплоть до номера сборки. Если на сервере 8.3.24.1548, а на рабочем месте старая сборка, клиент либо откажется подключаться, либо предложит обновиться. Заранее проверьте, что у всех пользователей установлена нужная платформа, а в базе — совместимая конфигурация.
Ещё два пункта подготовки:
- Создайте отдельную учётную запись, от имени которой работает служба сервера 1С. Стандартно в Windows это
USR1CV8. Ей нужны права на каталоги кластера и логов. - Решите, где живёт СУБД. Если на этой же машине, нагрузка на память складывается. Если на другой, между серверами нужна быстрая сеть и открытый порт СУБД.
Порты и протоколы: что открывать между клиентом и сервером
Клиент 1С общается с сервером по собственному протоколу поверх TCP. Это не HTTP и не RDP, особых «протоколов подключения» выбирать не нужно. Нужно правильно открыть порты.
Стандартные значения по умолчанию:
| Что | Порт | Назначение |
|---|---|---|
| Агент сервера | 1540 | вход для консоли администрирования |
| Менеджер кластера | 1541 | основной порт, к которому подключается клиент |
| Рабочие процессы | диапазон 1560–1591 | сами сессии пользователей |
Менеджер кластера вернёт клиенту адрес рабочего процесса, и дальше клиент соединяется уже с ним. Поэтому открыть только 1541 недостаточно, нужен и диапазон.
Пример правила для брандмауэра Windows через командную строку (от администратора):
netsh advfirewall firewall add rule name="1C Server" dir=in action=allow protocol=TCP localport=1540,1541,1560-1591
Для СУБД отдельно открывается её порт: у PostgreSQL по умолчанию 5432, у Microsoft SQL Server — 1433. Но открывать его нужно только для сервера 1С, не для всех клиентов.
Диапазон портов можно менять в настройках кластера. Если администратор его сменил, правило брандмауэра придётся поправить. Проверьте значения в консоли серверов, а не полагайтесь на память.
Как подключить 1С к серверу по шагам
Шаг 1. Создайте базу в кластере сервера
Если базы ещё нет, её создают на сервере. Откройте консоль «Администрирование серверов 1С:Предприятия», найдите нужный кластер и добавьте информационную базу. Заполните:
- имя базы (латиницей, без пробелов — так проще в строках запуска);
- тип СУБД и адрес сервера СУБД;
- имя базы данных в СУБД и учётную запись для неё;
- флаг «Создать базу данных в случае её отсутствия», если база новая.
Если база уже существует (перенос с файловой), её загружают из выгрузки .dt через конфигуратор: «Администрирование» → «Загрузить информационную базу».
Шаг 2. Добавьте базу в список на клиенте
На рабочем месте запустите 1С и нажмите «Добавить». Далее:
- Выберите «Добавление в список существующей информационной базы».
- Тип расположения — «На сервере 1С:Предприятия».
- Впишите кластер серверов
— имя или IP-адрес машины с сервером. Если кластер работает на нестандартном порту, указывается вместе с ним, например
srv-1c:1641. - Впишите имя информационной базы в кластере — ровно так, как оно названо в консоли.
- Укажите название для списка, версию платформы, способ аутентификации.
Теперь база появится в списке запуска.
Шаг 3. Подключение без списка: строка соединения
Для ярлыков, скриптов и тонких клиентов удобна строка в таком виде:
Srvr="srv-1c";Ref="buh_prod";
Запуск из командной строки:
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" ENTERPRISE /S "srv-1c\buh_prod" /N "Иванов" /P "пароль"
Здесь /S — сервер и база, /N и /P — имя пользователя и пароль. Номер версии в пути замените на свой.
Пароль в ярлыке виден любому, кто откроет его свойства. Для рабочих мест лучше аутентификация по паролю при входе или через доменную учётную запись.
Шаг 4. Подключение приложения к серверу СУБД
Если вы имели в виду не клиента 1С, а подключение самого сервера 1С к SQL-серверу, смотрите настройки базы в консоли кластера. Основное:
- адрес сервера СУБД и его порт;
- учётная запись с правом создавать и изменять базу;
- смещение дат (для SQL Server —
2000, от него зависят сроки и периоды).
Проверка простая: сохраните базу в консоли, если параметры неверны, сервер сразу покажет текст ошибки подключения к СУБД.
Безопасность подключения
Сервер 1С в сети — это точка, к которой стучатся все. Минимальный набор мер:
- 🔒 Не выставляйте порты 1C в интернет. Если нужен удалённый доступ, используйте VPN или веб-публикацию с HTTPS. Открытый
1541на внешнем адресе быстро находят сканеры. - 👤 Отдельные пользователи для разных задач. Администратор кластера, администратор базы и обычные пользователи — разные учётные записи.
- 🔑 Пароль администратора кластера задаётся в консоли. Без него любой, кто видит порт
1540, может управлять кластером. - 🛡 Права на файлы. Каталог кластера и каталог логов доступны только служебной учётной записи.
- 🌐 СУБД открыта только серверу 1С. Правило брандмауэра на порт СУБД ограничьте адресом сервера.
Разделяйте и доступ к базе. Пользователь с ролью «Полные права» не нужен бухгалтеру для обычной работы, а аутентификация средствами ОС позволяет не хранить пароли в ярлыках.
Перед любыми изменениями в рабочей базе сделайте резервную копию и согласуйте работы с регламентом организации. Правка прав и параметров кластера на живой базе без копии — рискованная привычка.
Если не подключается: разбор типичных ошибок
Точный текст сообщения зависит от версии платформы, поэтому ниже ориентируйтесь на симптом.
1541 доступен: Test-NetConnection srv-1c -Port 1541 в PowerShell. Если порт закрыт, ищите брандмауэр на сервере или на пути между сетями.rphost клиент не дотянулся. Откройте 1560–1591 или тот диапазон, что настроен в кластере.Если ни один из пунктов не подходит:
- Посмотрите логи сервера в каталоге кластера. Поиск ведите по времени попытки подключения.
- Попробуйте подключиться с другой машины. Если там работает, проблема в клиенте или его сети.
- Перезапустите службу сервера 1С (в нерабочее время и предупредив пользователей). После этого заново откройте консоль и проверьте, что кластер виден.
Тест порта из PowerShell экономит часы. Если TcpTestSucceeded вернул False, дальше платформу можно не разбирать: проблема в сети или брандмауэре.
Как ускорить работу после подключения
Подключились, но тормозит? Типовые причины и меры:
- 📉 Сеть. Задержка между клиентом и сервером важнее пропускной способности. Тонкий клиент хорошо переносит 1–2 мс, а вот 40–60 мс в соседний город ощущаются на каждом действии.
- 💽 Диск СУБД. Журнал транзакций и данные на SSD. Если база на обычном HDD, сервер упрётся в него.
- 🧮 Память СУБД. Если SQL Server занял всю память, 1С останется без неё. Ограничьте максимум для СУБД.
- 🗂 Обслуживание. Регулярное обновление статистики и перестроение индексов в СУБД. Без этого запросы со временем замедляются.
- 🧹 Регламентные задания. Тяжёлые фоновые операции лучше сдвигать на ночь.
Следите за сеансами в консоли кластера: видно, кто что исполняет и кто висит. Зависший сеанс можно завершить, это не повредит базу, но несохранённые данные пользователя потеряются.
Другие способы подключиться к базе на сервере
Прямой тонкий клиент — не единственный путь. Выбор зависит от того, откуда и кто работает.
| Способ | Когда подходит | Минусы |
|---|---|---|
| Тонкий клиент по сети | офис, быстрая локальная сеть | нужна установка платформы |
| Веб-клиент через публикацию | доступ из браузера, без установки | нужен веб-сервер, часть функций ограничена |
| Терминальный сервер (RDP) | удалённая работа, слабые компьютеры | нужны лицензии на терминальный доступ |
| VPN + тонкий клиент | удалённый сотрудник с ноутбуком | зависит от качества канала |
| Облачный сервис 1С | нет своей инфраструктуры | оплата подпиской, зависимость от провайдера |
Для публикации на веб-сервере (Apache или IIS) используйте конфигуратор: «Администрирование» → «Публикация на веб-сервере». Адрес вида https://ваш-домен/buh открывается в браузере. Обязательно включите HTTPS.
Частые вопросы
Можно ли подключиться к серверу 1С по IP-адресу, а не по имени?
192.168.1.10. Имя удобнее при смене адреса, а IP надёжнее, если в сети проблемы с DNS.Что делать, если кластер работает не на порту 1541?
srv-1c:1641. Остальные порты кластера смотрите в его настройках.