Как развернуть 1С 8.3 на сервере с СУБД: от установки SQL до первой базы
Содержание
Клиент-серверная база 1С создаётся в три шага: ставите СУБД (MS SQL Server или PostgreSQL в сборке для 1С), ставите сервер 1С:Предприятия 8.3 как службу Windows, а затем в консоли кластера добавляете информационную базу с флажком «Создать базу данных в случае ее отсутствия». Таблицы в СУБД платформа создаст сама — вручную в SQL ничего готовить не нужно.
Частое заблуждение: «достаточно положить файловую базу
на сервер, и она станет серверной». Нет. Файловая база в общей папке остаётся файловой, сколько бы ядер ни было у машины. Клиент-серверный режим — это связка «сервер 1С + СУБД», и данные из файловой базы переносят через выгрузку .dt.
Подготовка: железо, СУБД и лицензии для клиент-серверной базы
Начните с трёх решений: на чём будет работать сервер, какую СУБД ставить и какие лицензии купить.
Сервер и ориентиры по ресурсам
Сервер 1С и СУБД обычно ставят на одну машину — так меньше сетевых задержек. Разносить их имеет смысл при десятках активных пользователей.
| Пользователей одновременно | Ядра | Память | Диск |
|---|---|---|---|
| до 10 | 4 | 16 ГБ | SSD |
| 10–30 | 8 | 32 ГБ | SSD/NVMe |
| 30–60 | 12–16 | 64 ГБ | NVMe, база и журналы на разных дисках |
Цифры ориентировочные: тяжёлая ERP с проведением больших документов съест больше, чем Бухгалтерия на 10 человек. Операционная система — Windows Server 2016 и новее либо Linux (Ubuntu, Debian, РЕД ОС, Astra и др.).
Выбор СУБД
| СУБД | Когда выбрать | Что учесть |
|---|---|---|
| 🟦 MS SQL Server | Windows-инфраструктура, админ знает SQL Server | Платная лицензия; бесплатная Express ограничена размером базы 10 ГБ и малой памятью |
| 🐘 PostgreSQL для 1С | Нужна бесплатная СУБД, работа на Linux или Windows | Ставить только сборку с патчами для 1С (от фирмы 1С или Postgres Pro), обычный PostgreSQL не подойдёт |
| IBM Db2, Oracle | Крупные внедрения, где эта СУБД уже есть | Редко встречаются в малом бизнесе |
Для фирмы на 5–20 пользователей чаще всего хватает PostgreSQL. Если уже куплен SQL Server Standard — берите его.
Лицензии
Для клиент-серверного режима нужны два вида лицензий:
- 🔑 лицензия на сервер 1С:Предприятия — x86 или x86-64 (для 64-битного сервера нужна именно 64-битная лицензия);
- 👥 клиентские лицензии — по числу одновременно работающих пользователей.
Без серверной лицензии кластер не запустит сеанс с базой — исключение составляет только учебная версия платформы. Клиентские лицензии можно активировать прямо на сервере, тогда их будет выдавать кластер всем подключающимся.
Установка СУБД под клиент-серверную 1С
MS SQL Server
- Запустите установщик, выберите компонент Database Engine Services. Management Studio ставится отдельно — она пригодится для бэкапов.
- На шаге сортировки (collation) выберите
Cyrillic_General_CI_AS. Остальные варианты дают проблемы с упорядочиванием русских строк. - Режим аутентификации — смешанный (Mixed Mode), задайте пароль пользователя
sa. 1С подключается по SQL-логину. - Если база будет крупной, сразу укажите каталоги данных и журналов на разных дисках.
После установки ограничьте максимальную память SQL Server в свойствах экземпляра. Иначе SQL заберёт почти всю оперативную память, и рабочим процессам 1С на той же машине станет тесно. Ориентир: оставить сервер 1С и системе 30–40% памяти.
PostgreSQL
- Скачайте дистрибутив PostgreSQL для 1С под нужную версию платформы (сборки выкладываются вместе с технологической платформой) или Postgres Pro.
- Установите, задайте пароль суперпользователя
postgres. - Проверьте, что служба слушает порт
5432и принимает подключения с сервера 1С (файлpg_hba.conf, если сервер 1С стоит на другой машине).
Создавать пустую базу в pgAdmin не нужно. При регистрации ИБ 1С сама создаст базу данных с правильными настройками.
Установка сервера 1С:Предприятия 8.3 как службы
Возьмите дистрибутив технологической платформы для сервера нужной разрядности (обычно 64-битный, «Сервер 1С:Предприятия (64-bit) для Windows»). Версия платформы на сервере и у клиентов должна совпадать до последней цифры номера.
Порядок установки:
- Запустите
setup.exeиз дистрибутива. - В компонентах отметьте:
- Сервер 1С:Предприятия 8;
- Администрирование сервера 1С:Предприятия — это консоль кластера;
- при необходимости — модули расширения веб-сервера (для публикации через IIS или Apache).
- Включите флажок Установить сервер 1С:Предприятия 8 как сервис Windows.
- Оставьте пользователя по умолчанию —
USR1CV8, задайте ему пароль. От имени этого пользователя будет работать служба. - Завершите установку и проверьте в
services.msc, что служба «Агент сервера 1С:Предприятия 8.3» запущена.
По умолчанию служба хранит настройки кластера в каталоге C:\Program Files\1cv8\srvinfo. Там же лежит реестр кластера — этот каталог стоит включить в резервное копирование
.
Регистрация консоли администрирования
Консоль кластера — это оснастка MMC, ей нужна зарегистрированная библиотека radmin.dll. Если консоль открывается с ошибкой «оснастка не может быть создана», запустите от имени администратора командный файл из каталога установленной платформы:
cd "C:\Program Files\1cv8\8.3.25.1374\bin"
RegMSC.cmd
Номер версии в пути подставьте свой. Разрядность консоли должна совпадать с разрядностью установленной платформы.
Кластер серверов и создание информационной базы
При установке службы кластер по умолчанию создаётся автоматически — на порту 1541, а агент слушает 1540. Остаётся подключиться к
нему и добавить базу.
Подключение к кластеру в консоли
- Откройте Администрирование серверов 1С Предприятия из меню «Пуск».
- Правой кнопкой по корню Central 1C:Enterprise 8.3 servers →
Создать → Центральный сервер 1С:Предприятия. - В поле «Имя» укажите сетевое имя сервера (не
localhost, если к базе будут подключаться с других компьютеров), протоколtcp, порт1540. - Раскройте дерево: сервер → Кластеры → «Локальный кластер».
Создание клиент-серверной базы
Правой кнопкой по ветке Информационные базы → Создать → Информационная база. Заполните поля:
| Поле | Что указать |
|---|---|
| Имя | Имя базы в кластере, латиницей без пробелов, например buh_main |
| Защищённое соединение | Выключено (для локальной сети) |
| Сервер баз данных | Имя сервера СУБД; для именованного экземпляра MS SQL — SERVER\INSTANCE |
| Тип СУБД | MS SQL Server или PostgreSQL |
| База данных | Имя базы в СУБД, удобно совпадает с именем в кластере |
| Пользователь / пароль сервера БД | sa или postgres либо отдельный логин с правом создавать базы |
| Разрешить выдачу лицензий сервером 1С | Да |
| Смещение дат | Для MS SQL — 2000, для PostgreSQL — 0 |
| Создать базу данных в случае ее отсутствия | Включить |
| Установить блокировку регламентных заданий | Включить, если планируете загружать .dt |
Нажмите «ОК». Если всё указано верно, через несколько секунд база появится в списке, а в СУБД — пустая база данных.
Смещение дат выбирается один раз при создании базы. Поменять его потом нельзя без пересоздания базы и загрузки данных из .dt.
Альтернатива: создать базу из окна запуска 1С
То же самое можно сделать на клиентском компьютере: окно запуска → «Добавить» → «Создание новой информационной базы» → вариант «На сервере 1С:Предприятия». Поля будут те же, что в консоли. Этот путь удобен, когда консоли под рукой нет, но для администратора консоль нагляднее.
Перенос данных из файловой базы
Пустая серверная база — это «чистый лист». Чтобы перенести рабочие данные:
- В файловой базе откройте Конфигуратор →
Администрирование → Выгрузить информационную базу, сохраните файл.dt. - Подключите новую серверную базу
к списку в окне запуска: «Добавить» → «Добавление в список существующей информационной базы» → «На сервере 1С:Предприятия», кластер
SERVER, имяbuh_main. - Откройте её в Конфигураторе →
Администрирование → Загрузить информационную базу, выберите файл.dt. - После загрузки снимите блокировку регламентных заданий в свойствах базы в консоли кластера.
Загрузка .dt полностью заменяет данные в базе-приёмнике. Перед загрузкой проверьте, что выбрана именно новая серверная база, а не рабочая.
Регламентные задания блокируют не случайно: в копии рабочей базы они начнут обмениваться с банком, ЭДО и сайтом от имени «боевой» организации.
Права доступа, порты и лицензирование сервера
Учётная запись службы
Служба работает от USR1CV8. Ей нужны:
- ✅ право «Вход в качестве службы» (выдаётся при установке);
- ✅ полный доступ к каталогу
srvinfo; - ✅ доступ к папкам, куда 1С пишет файлы (выгрузки, обмены, вложения на диске), если такие пути настроены в базе.
Сетевую папку как Z:\ служба не увидит: работайте с UNC-путями вида \\server\share, и дайте USR1CV8 (или доменной учётной записи службы) права на эту папку.
Администраторы кластера и базы
Сразу после установки кластер открыт для всех. Задайте администратора:
- В консоли раскройте кластер → Администраторы →
Создать → Администратор. - Укажите имя и пароль либо пользователя Windows.
Отдельно в свойствах каждой базы можно задать администратора информационной базы — тогда без его пароля базу не удалят и не изменят параметры из консоли. Потерю пароля администратора кластера лечат восстановлением каталога srvinfo из резервной копии при остановленной службе, а не пересозданием кластера.
Порты в брандмауэре
| Порт | Назначение |
|---|---|
| 1540 | Агент сервера — к нему подключаются клиенты и консоль |
| 1541 | Менеджер кластера |
| 1560–1591 | Рабочие процессы (диапазон задаётся в свойствах рабочего сервера) |
| 1433 / 5432 | MS SQL / PostgreSQL, если СУБД на другой машине |
Откройте эти порты на сервере для входящих подключений из локальной сети. Закрытый диапазон 1560–1591 — типичная причина ситуации «консоль на сервере работает, а с клиентов база не открывается».
Где активировать лицензии
Серверную лицензию активируют на самом сервере: запустите на нём клиент 1С с любой базой этого кластера, и мастер получения лицензии предложит ввести пинкод. Программная лицензия сохраняется в файл и привязывается к параметрам компьютера. Проверить, какие лицензии выдаются, удобно командой:
rac session list --licenses
Для неё нужна служба удалённого администрирования ras; синтаксис для вашей версии смотрите в rac help.
Производительность и регламентное обслуживание СУБД
Клиент-серверная база быстрее файловой только при живой СУБД. Без обслуживания через полгода отчёты начнут тормозить.
Сторона СУБД
MS SQL Server — создайте план обслуживания:
- 🔄 обновление статистик — ежедневно ночью;
- 🧹 очистка процедурного кэша после обновления статистик;
- 🧱 перестроение или реорганизация индексов — раз в неделю;
- 📉 модель восстановления:
Simple, если вам хватает ночных полных копий;Full— если нужна точка восстановления на любой момент и вы готовы делать копии журнала.
PostgreSQL — следите, чтобы работал autovacuum, и раз в неделю ночью запускайте полную сборку статистики:
VACUUM ANALYZE;
Параметры памяти (shared_buffers, work_mem, effective_cache_size) подбирают под объём ОЗУ; сборки для 1С идут с конфигурацией, которую стоит пересмотреть под ваш сервер.
Сторона сервера 1С
В свойствах рабочего сервера и кластера есть настройки, которые реально влияют на стабильность:
- Количество ИБ на процесс и количество соединений на процесс — управляют тем, сколько рабочих процессов поднимется;
- Безопасный расход памяти за один вызов — защищает сервер от тяжёлого отчёта одного пользователя;
- Интервал перезапуска рабочих процессов в свойствах кластера — плановый перезапуск снимает утечки памяти.
Ручное завершение рабочего процесса в консоли обрывает сеансы всех пользователей на нём, с потерей несохранённых данных. Делайте это вне рабочего времени или после предупреждения пользователей.
Если база тормозит у всех сразу, первым делом смотрите загрузку диска на сервере СУБД, а не настройки 1С. Медленный диск под файлами базы и журналами — самая частая причина.
Резервные копии клиент-серверной базы 1С
В клиент-серверном режиме основной бэкап делает СУБД, а не 1С. Копирование файлов базы «на ходу» не работает
— у вас нет файла 1Cv8.1CD.
| Способ | Плюсы | Минусы |
|---|---|---|
| Бэкап средствами MS SQL | Быстрый, без остановки работы, по расписанию | Восстанавливается только в MS SQL |
pg_dump для PostgreSQL | Без остановки работы, сжатый файл | Восстанавливается только в PostgreSQL |
Выгрузка .dt | Переносится между СУБД и в файловый вариант | Долго на больших базах, не годится как ежедневная копия |
Пример полной копии в MS SQL:
BACKUP DATABASE [buh_main]
TO DISK = N'D:\Backup\buh_main.bak'
WITH INIT, COMPRESSION;
Сжатие (COMPRESSION) недоступно в редакции Express — там уберите этот параметр.
Пример для PostgreSQL:
pg_dump -U postgres -Fc -f D:\Backup\buh_main.dump buh_main
Правило «3-2-1» здесь работает так же, как везде: копии храните не только на диске сервера, но и на другом носителе или в другом месте.
Как восстановить базу
- Восстановите базу в СУБД из файла копии (в MS SQL — через Management Studio, в PostgreSQL —
pg_restoreв пустую базу). - Если сервер 1С новый — зарегистрируйте базу в кластере, указав то же имя базы в СУБД и не включая флажок создания базы.
- Если восстанавливаете как тестовую копию рядом с рабочей — включите блокировку регламентных заданий до первого входа.
Раз в квартал разворачивайте копию на тестовый сервер. Непроверенный бэкап — это надежда, а не копия.
Частые ошибки при создании серверной базы
Частые вопросы
Можно ли поставить сервер 1С и СУБД на одну машину?
Подойдёт ли бесплатный MS SQL Express?
Нужно ли создавать базу в SQL вручную?
Как вернуть серверную базу в файловый вариант?
.dt через Конфигуратор, создайте пустую файловую базу и загрузите туда файл.