Сетевая работа 1С 8.3: от выбора варианта до резервных копий
Содержание
Сделать 1С сетевой можно двумя способами. Первый: положить базу в общую папку, и все подключаются к ней по сети. Второй: поставить сервер 1С:Предприятия и СУБД, а пользователи работают через кластер серверов. Первый вариант настраивается за двадцать минут, второй требует отдельной машины и пары часов работы.
Выбор зависит от числа пользователей и размера базы. Ниже — как решить, что вам подходит, как настроить оба варианта и что сделать, чтобы сетевая база не тормозила и не потерялась.
Какой вариант выбрать: файловая база или клиент-сервер
Файловая база хранится в одном файле 1Cv8.1CD в обычной папке. Вся обработка данных идёт на компьютере пользователя: он по сети вытягивает нужные куски файла, считает у себя и пишет обратно. Сервера приложений нет.
Клиент-серверная база живёт в СУБД (PostgreSQL, MS SQL Server и др.). Запросы выполняет сервер 1С вместе с СУБД, клиенту приходит только готовый результат.
| Параметр | Файловый | Клиент-серверный |
|---|---|---|
| Пользователей одновременно | до 5–10 | от 10 и больше |
| Размер базы | до нескольких гигабайт | десятки и сотни гигабайт |
| Нужен отдельный сервер | нет | да |
| Сложность настройки | низкая | выше |
| Блокировки | на уровне файла/таблиц | на уровне записей |
| Гибкость резервного копирования | копия файла | средства СУБД и выгрузка в .dt |
Цифры в таблице — ориентир из практики, а не жёсткий предел. Если все пятеро работают с документами и отчёты строят редко, файловая база выдержит и больше. Если одновременно формируют тяжёлые отчёты, она начнёт «вставать» уже на трёх.
💡 Не знаете, куда идёт рост? Начните с файлового режима: базу потом можно выгрузить в .dt и загрузить в клиент-серверную без потери данных.
Лицензии при этом покупаются отдельно: клиентские (на подключения) и серверная (на сам сервер 1С). Проверьте, что количество клиентских лицензий закрывает ваших пользователей, иначе лишние не смогут войти.
Что нужно серверу и сети
Под файловую базу отдельное железо не обязательно: подойдёт любой компьютер или файловый сервер, на котором лежит общая папка. Главное требование — быстрая и стабильная сеть. Для кабельной сети достаточно гигабита, Wi-Fi для работы с файловой базой лучше не использовать: обрыв соединения в момент записи может повредить файл базы.
Для клиент-серверного варианта ориентиры такие:
- 🖥 процессор: чем выше частота ядра, тем лучше, 1С слабо масштабируется на множество медленных ядер;
- 🧠 память: от 8 ГБ для небольшой компании на 10–15 пользователей, дальше растёт по мере нагрузки;
- 💾 диски: SSD под базу и под журналы СУБД, лучше раздельно;
- 🌐 сеть: гигабит между сервером приложений, СУБД и клиентами;
- 🧩 система: Windows Server или Linux (в этой статье пример для Debian/Ubuntu).
Сервер 1С и СУБД можно поставить на одну машину. Для 10–20 пользователей это нормальная схема. Когда нагрузка вырастет, СУБД выносят на отдельный сервер.
Откройте порты в брандмауэре. Основные для сервера 1С: 1540 (агент сервера), 1541 (менеджер кластера) и диапазон 1560–1591 для рабочих процессов. Для PostgreSQL — 5432, для MS SQL Server — 1433. Если используете сервер администрирования ras, добавьте 1545.
Как сделать файловую базу сетевой
Здесь всё просто.
- Выберите компьютер, который включён в рабочее время и надёжно работает. Лучше файловый сервер, а не чей-то рабочий ПК.
- Создайте на нём папку, например
D:\Bases\Buh, и поместите туда базу (папку с1Cv8.1CD). - Откройте общий доступ к этой папке. Всем пользователям базы нужны права на чтение и запись, а также на создание и удаление файлов внутри папки: 1С создаёт там служебные файлы блокировок.
- На каждом рабочем месте запустите 1С, нажмите «Добавить» и выберите «Добавление в список существующей информационной базы».
- Тип расположения: «На данном компьютере или на компьютере в локальной сети». Путь укажите сетевой, например
\\SRV\Bases\Buh.
⚠️ Указывайте путь через имя сервера (\\SRV\...), а не через букву сетевого диска. Буква «Z:» на разных компьютерах может не совпасть или отвалиться после перезагрузки.
Файловую базу не стоит открывать по VPN или через медленный канал. Для удалённых сотрудников используйте терминальный сервер или переходите на клиент-сервер с веб-доступом.
Установка сервера 1С:Предприятия
Серверная часть ставится из того же дистрибутива платформы, что и клиентская, но с отметкой нужного компонента.
Windows
- Запустите установку платформы и на шаге выбора компонентов отметьте «Сервер 1С:Предприятия».
- Служба агента сервера создаётся автоматически и по умолчанию работает под учётной записью, которую вы укажете. Создайте для неё отдельного пользователя (например,
usr1cv8) без права интерактивного входа. - Дайте этому пользователю полный доступ на каталог кластера (по умолчанию он создаётся в каталоге данных программы) и на каталоги, куда сервер пишет логи.
- Проверьте в оснастке служб, что служба «Агент сервера 1С:Предприятия 8.3» запущена и стоит на автоматический запуск.
Linux (пакеты deb)
Серверные пакеты ставятся командами вида:
sudo dpkg -i 1c-enterprise-8.3.*-common_*.deb
sudo dpkg -i 1c-enterprise-8.3.*-server_*.deb
sudo apt -f install
Версию в именах файлов подставьте свою. Если dpkg ругнётся на зависимости, команда apt -f install их доберёт.
После установки запустите службу и добавьте её в автозагрузку:
sudo systemctl enable --now srv1cv83
sudo systemctl status srv1cv83
Сервер работает от пользователя usr1cv8 (его создаёт пакет). Убедитесь, что у него есть доступ на запись в каталог кластера и в каталог логов.
Для проверки смотрите, слушаются ли порты:
ss -tlnp | grep -E '1540|1541'
Если оба порта видны, агент и менеджер кластера поднялись.
Подключение СУБД для сервера 1С
Сервер 1С сам данные не хранит, их держит СУБД. Подойдёт PostgreSQL или MS SQL Server. Для PostgreSQL берите сборку, совместимую с 1С (её выпускают специально под платформу), а не обычный дистрибутив из репозитория: у стандартной сборки бывают проблемы с производительностью и совместимостью.
Что важно сделать на стороне PostgreSQL:
- создать роль с правами суперпользователя и паролем, под ней 1С создаёт и обслуживает базы;
- в
postgresql.confразрешить подключения с адреса сервера 1С (параметрlisten_addresses); - в
pg_hba.confдобавить строку для адреса сервера 1С с методомmd5илиscram-sha-256; - задать разумные настройки памяти.
Стартовые значения для сервера, на котором PostgreSQL один, а оперативной памяти 16 ГБ:
| Параметр | Ориентир |
|---|---|
shared_buffers | около 25% ОЗУ, то есть ~4 ГБ |
effective_cache_size | около 50–70% ОЗУ |
work_mem | 16–64 МБ (зависит от числа сеансов) |
maintenance_work_mem | 512 МБ–1 ГБ |
Это отправная точка, а не готовый рецепт: после запуска наблюдайте за нагрузкой и подстраивайте. Если сервер 1С и СУБД на одной машине, не отдавайте PostgreSQL всю память — 1С тоже нужна.
⚠️ Перед правкой postgresql.conf сделайте копию файла. После изменения большинства параметров нужен перезапуск службы СУБД, а значит, оборвутся все сеансы. Делайте это вне рабочих часов.
Создание сетевой базы и подключение пользователей
Когда сервер и СУБД готовы, создаём базу в кластере.
- Откройте консоль администрирования серверов 1С (оснастка «Администрирование серверов 1С:Предприятия») и добавьте свой сервер в список.
- Раскройте сервер, затем «Кластеры» → локальный кластер (по умолчанию он создаётся при первом запуске агента).
- Правой кнопкой по «Информационные базы» → «Создать» → «Информационная база».
- Заполните поля: имя базы, сервер баз данных (адрес СУБД), тип СУБД, имя базы данных, пользователь и пароль СУБД.
- Отметьте «Создать базу данных в случае её отсутствия» — иначе придётся создавать пустую базу в СУБД вручную.
- Укажите язык, смещение дат и при необходимости включите «Выдача лицензий сервером 1С:Предприятия».
Базу можно создать и из обычного окна запуска 1С: «Добавить» → «Создание новой информационной базы», тип расположения «На сервере 1С:Предприятия». Разница лишь в том, где вы вводите параметры.
После этого базу нужно наполнить: загрузить выгрузку .dt через Конфигуратор (Администрирование → Загрузить информационную базу) либо создать новую из шаблона.
Подключение клиента:
- Окно запуска → «Добавить» → «Добавление в список существующей информационной базы».
- Тип расположения: «На сервере 1С:Предприятия».
- Кластер серверов
: имя или адрес вашего сервера (порт
1541добавляют только если он нестандартный). - Имя информационной базы в кластере — то, что вы задали при создании.
Если нужен доступ по браузеру или через тонкий клиент по HTTP, базу публикуют на веб-сервере. В Конфигураторе откройте Администрирование → Публикация на веб-сервере, выберите веб-сервер (Apache или IIS) и каталог публикации.
Как не дать сетевой базе тормозить
Когда база начинает «задумываться», причина чаще всего не в сети, а в настройках и накопленном мусоре. Вот что проверить по порядку.
Нагрузка и перезапуск рабочих процессов
В свойствах кластера и рабочих серверов есть параметры, которые отвечают за допустимый объём памяти рабочего процесса и интервал его перезапуска. Если процесс разрастается и не возвращает память, сервер начинает свопить. Задайте разумные пределы и интервал перезапуска, чтобы процессы периодически обновлялись.
⚠️ Перезапуск рабочего процесса завершает сеансы, которые на нём находились. Меняйте эти настройки вне рабочего времени и предупреждайте пользователей.
Неактивные сеансы и «зависшие» пользователи
Забытые сеансы занимают лицензии и память. В консоли администрирования раскройте «Сеансы» и посмотрите, есть ли записи с давней активностью. Лишние можно завершить вручную, правой кнопкой по сеансу. Перед завершением убедитесь, что человек действительно не работает : несохранённые данные пропадут.
Кэш на клиенте
Тонкий клиент хранит локальный кэш, и у пользователя после обновления конфигурации иногда «живут» старые формы или странные ошибки. Тогда помогает очистка кэша: закройте 1С и запустите её с ключом /ClearCache, либо удалите содержимое каталогов 1Cv8 в %LOCALAPPDATA%\1C и %APPDATA%\1C. Список баз при этом сохранится, если не трогать файл ibases.v8i.
Обслуживание базы и СУБД
В PostgreSQL регулярно нужны VACUUM и ANALYZE, в MS SQL Server — обновление статистики и перестроение индексов. Без этого запросы со временем замедляются. Ставьте обслуживание на ночь.
Отдельный источник мусора — сама база 1С: старые журналы регистрации, неиспользуемые версии объектов, огромные регистры. Удаляйте то, что не нужно по регламенту, и ограничивайте срок хранения журнала.
Резервное копирование сетевой базы
Копия нужна всегда, и способ зависит от варианта.
Файловая база. Закройте 1С у всех пользователей (иначе файл копируется в неконсистентном состоянии) и скопируйте файл 1Cv8.1CD. Для регулярности настройте задание планировщика, которое делает это ночью и складывает копии на другой диск или сетевой ресурс.
Клиент-сервер. Тут есть два уровня.
- 🛟 Средства СУБД: для PostgreSQL —
pg_dump, для MS SQL Server — резервная копия средствами сервера. Этот способ быстрее и надёжнее на больших базах. - 📦 Выгрузка в
.dt: Конфигуратор →Администрирование→Выгрузить информационную базу. Файл переносим между разными вариантами и версиями СУБД, но выгрузка идёт дольше и требует исключительного доступа к базе.
Лучше использовать оба: ежедневную копию СУБД и еженедельную выгрузку .dt «на всякий случай».
Раз в месяц проверяйте, что копию можно восстановить на тестовом сервере. Файл, который не открывается, резервной копией не является.
Восстановление: для файловой базы подменяете файл 1Cv8.1CD рабочим экземпляром, для СУБД — разворачиваете копию в пустую базу и подключаете её в кластере. Перед восстановлением на рабочей базе сделайте копию текущего состояния, даже если оно «битое».
Частые ошибки при настройке сетевой работы
Здесь только то, что в инструкции выше не разбиралось.
1541 с клиентской машины. Часто мешает брандмауэр или DNS: сервер не резолвится по имени, а по IP подключение работает.1Cv8.1CD не трогайте), предварительно сделав копию папки.Частые вопросы
Сколько пользователей выдержит файловая база?
Нужен ли отдельный сервер под клиент-серверную 1С?
Можно ли перевести файловую базу в клиент-серверную?
.dt через Конфигуратор, создайте пустую базу в кластере и загрузите файл.