Перенос или подключение уже работающей базы 1С:Предприятие к серверной инфраструктуре — задача, с которой рано или поздно сталкивается каждый администратор. В отличие от создания новой базы "с нуля", работа с существующими данными требует особой осторожности: здесь важно не только сохранить целостность информации, но и правильно настроить взаимодействие между клиентскими местами и сервером. Ошибки на этом этапе могут привести к потере данных, конфликтам блокировок или даже полной недоступности системы для пользователей.
В этой статье мы разберём все этапы подключения — от подготовки серверного окружения до финальной проверки работоспособности. Особое внимание уделим типичным "подводным камням": несоответствию версий платформы, проблемам с правами доступа и нюансам работы с SQL Server или PostgreSQL. Материал актуален для последних версий 1С:Предприятие 8.3 (включая 8.3.23+) и серверных ОС Windows Server 2019/2022.
Если вы администрируете базу впервые, рекомендуем предварительно ознакомиться с разделом FAQ — там собраны ответы на частые вопросы о совместимости и требованиях к оборудованию.
1. Подготовка серверного окружения: что нужно проверить до начала
Прежде чем приступать к физическому подключению базы, убедитесь, что серверное ПО и "железо" соответствуют требованиям 1С. Минимальные системные требования для серверной части зависят от количества пользователей и объёма данных, но есть универсальные критерии:
- 🖥️ Операционная система: Windows Server 2016 и выше (рекомендуется 2019/2022) или Linux с ядром 3.10+. Для PostgreSQL требуется версия не ниже 9.6.
- 💾 Дисковое пространство: свободное место должно превышать размер базы минимум в 1.5 раза (учитывайте рост логов транзакций).
- 🔄 Сетевое оборудование: пропускная способность канала между сервером и клиентами — от 1 Гбит/с. При работе через VPN проверьте стабильность соединения.
- 🔒 Права доступа: учётная запись, под которой выполняется установка, должна входить в группу
Администраторына сервере.
Критически важно проверить совместимость версий платформы 1С на сервере и клиентских машинах. Например, база, созданная в 1С:Предприятие 8.3.20, не откроется на сервере с версией 8.3.18. Для проверки версии используйте команду:
wmic product where "name like '1С%%'" get version
⚠️ Внимание: Если на сервере уже установлены другие базы 1С, временно остановите службу1C:Enterprise 8.3 Server Agentчерезservices.msc. Это предотвратит конфликты при добавлении новой базы.
2. Экспорт и перенос файлов базы данных
Существующая база 1С может храниться в двух форматах: файловом (расширение .1CD) или клиент-серверном (хранится в СУБД). Метод переноса зависит от текущего формата:
2.1. Перенос файловой базы (1CD)
Если база хранится в файле, её нужно преобразовать в клиент-серверный формат. Для этого:
- Скопируйте файл
.1CDна сервер в папку, доступную для чтения/записи (например,C:\1C_Bases\). - Запустите Конфигуратор 1С в режиме администратора и выберите
Файл → Открыть.... - В мастере выгрузки укажите целевую СУБД (например, Microsoft SQL Server) и следите за параметрами подключения.
2.2. Миграция базы из другой СУБД
Если база уже клиент-серверная, но хранится в другой СУБД (например, переносите с SQL Server на PostgreSQL), используйте утилиту 1cv8 с ключом /DumpIB:
1cv8.exe DESIGNER /F"C:\path\to\base.1CD" /DumpIB"C:\backup\base.dt"
Затем восстановите дамп на целевом сервере:
1cv8.exe DESIGNER /RestoreIB"C:\backup\base.dt" /S"server\instance" /N"BaseName" /U"sa" /P"password"
⚠️ Внимание: При переносе между разными СУБД возможны ошибки с кодировками (особенно если в базе есть символы кириллицы). Перед миграцией проверьте настройки collation в целевой базе.
☑️ Подготовка к переносу базы
3. Настройка кластера серверов 1С
Кластер серверов 1С — это "мост" между клиентскими приложениями и базой данных. Чтобы добавить новую базу, кластер должен быть запущен и корректно настроен. Проверьте его статус через Консоль администрирования 1С (1CEnterprise.exe с ключом /Admin) или командой:
ras cluster --list
Если кластер не создан, выполните его установку:
- Откройте
Панель управления → Программы и компоненты → 1С:Предприятие 8.3 → Настройка сервера 1С:Предприятия. - Выберите
Создать новый кластери укажите имя (например,MainCluster). - Добавьте рабочий сервер в кластер, указав его IP-адрес или имя в сети.
Для баз данных на SQL Server дополнительно настройте пул соединений в файле srvinfo.ini (расположен в папке установки 1С). Пример параметров для 50 пользователей:
[DBMS]
DBPoolSize=50
DBPoolWaitTime=300
| Параметр | Рекомендуемое значение | Описание |
|---|---|---|
DBPoolSize | Количество пользователей × 1.2 | Максимальное число соединений в пуле |
DBPoolWaitTime | 300 | Время ожидания свободного соединения (секунды) |
DBMS | MSSQLServer или PostgreSQL | Тип используемой СУБД |
DBServer | Имя или IP сервера СУБД | Адрес сервера баз данных |
Если кластер 1С не запускается, проверьте порты 1540-1541 в брандмауэре Windows. Эти порты должны быть открыты для входящих соединений.
4. Добавление базы в кластер: пошаговая инструкция
Теперь перейдём к непосредственному подключению базы. Для этого используем Консоль администрирования 1С или утилиту rac (для автоматизации). Рассмотрим оба варианта.
4.1. Через Консоль администрирования
- Запустите
1CEnterprise.exe /Admin. - В дереве кластеров выберите нужный кластер и нажмите
Добавить информационную базу. - Укажите параметры:
- 📌 Идентификатор базы: уникальное имя (например,
TradeDB_2026). - 🗃️ Каталог базы: путь к файлам (для файлового варианта) или имя базы в СУБД.
- 🔑 Пользователь СУБД: учётная запись с правами
db_owner.
- 📌 Идентификатор базы: уникальное имя (например,
Готово и дождитесь завершения операции.4.2. Через командную строку (rac)
Для автоматизации используйте команду:
rac infobase --cluster=MainCluster create --name=TradeDB_2026 --dbms=MSSQLServer --db-server=SQL_Server --db-name=TradeDB --db-user=sa --db-pwd=password
Проверьте успешность добавления командой:
rac infobase --cluster=MainCluster list
⚠️ Внимание: Если база добавилась, но не открывается, проверьте права на папку с временными файлами 1С (обычно C:\ProgramData\1C\1Cv8\). Учётная запись службы 1С должна иметь полный доступ.
Что делать, если база не отображается в списке?
Проверьте, что служба 1C:Enterprise 8.3 Server Agent запущена. Также убедитесь, что в файле conf.cfg (в папке кластера) нет ограничений по IP-адресам клиентов.
5. Настройка прав доступа и безопасности
После добавления базы в кластер необходимо настроить права доступа для пользователей. Это делается на двух уровнях: в 1С и в СУБД.
5.1. Права в 1С
Откройте базу в Конфигураторе и перейдите в Администрирование → Пользователи. Здесь:
- 👤 Создайте группы пользователей (например,
Бухгалтерия,Склад). - 🔐 Назначьте роли (например,
Полные права,Чтение данных). - 📋 Ограничьте доступ к конфиденциальным данным через настройки
Роли.
5.2. Права в СУБД
Для SQL Server выполните в Management Studio:
USE [TradeDB]
GO
CREATE LOGIN [1C_User] WITH PASSWORD='YourPassword1!'
GO
ALTER SERVER ROLE [db_owner] ADD MEMBER [1C_User]
GO
Для PostgreSQL используйте команду:
CREATE USER "1c_user" WITH PASSWORD 'YourPassword1!';
GRANT ALL PRIVILEGES ON DATABASE "TradeDB" TO "1c_user";
Важно: Никогда не используйте учётную запись sa (SQL Server) или postgres (PostgreSQL) для повседневной работы. Создайте отдельного пользователя с минимально необходимыми правами.
| Действие | SQL Server | PostgreSQL |
|---|---|---|
| Создание пользователя | CREATE LOGIN | CREATE USER |
| Назначение прав | ALTER SERVER ROLE | GRANT ALL PRIVILEGES |
| Проверка подключения | TEST CONNECTION в 1С | psql -U 1c_user -d TradeDB |
Используйте принцип минимальных привилегий: предоставляйте пользователям только те права, которые необходимы для их работы. Это снизит риски утечек данных и случайных изменений.
6. Тестирование и устранение ошибок
После подключения базы обязательно проведите тестирование:
- Подключитесь к базе с клиентской машины через 1С:Предприятие.
- Выполните типовые операции: создание документа, проведение, формирование отчёта.
- Проверьте работу в многопользовательском режиме (откройте базу с 2-3 машин одновременно).
Типичные ошибки и их решения:
- 🚫 "Не удалось подключиться к информационной базе": проверьте сетевое подключение к серверу и права на папку
1Cv8. - 🔄 "Ошибка блокировки данных": увеличьте таймаут блокировок в настройках кластера (
DeadlockTimeout=1000). - 📉 "Низкая производительность": оптимизируйте индексы в СУБД или увеличьте объём оперативной памяти, выделенной для 1С.
Для диагностики используйте журналы 1С (папка C:\ProgramData\1C\1Cv8\log\) и логи СУБД. Например, в SQL Server включите трассировку:
DBCC TRACEON (1200, 1204, 1222, -1)
⚠️ Внимание: Если после переноса база работает медленнее, чем в файловом варианте, проверьте настройки cost threshold for parallelism в SQL Server. Для 1С оптимальное значение — 25-50.
7. Оптимизация производительности после переноса
Клиент-серверный режим работы предъявляет другие требования к производительности, чем файловый. Чтобы база работала быстро:
- ⚡ Настройте кэш 1С: в файле
conf.cfgдобавьте строки:CacheSize=1024 # Размер кэша в МБ (рекомендуется 1/4 от ОЗУ сервера)CacheUnloadedObjects=1
- 🗄️ Оптимизируйте СУБД:
- Для SQL Server: выполните
UPDATE STATISTICSи перестройте индексы. - Для PostgreSQL: настройте
shared_buffers(25% от ОЗУ) иeffective_cache_size(50% от ОЗУ).
- Для SQL Server: выполните
- 📡 Сетевые настройки: если клиенты подключаются по VPN, увеличьте
MTUдо 1400 байт.
Для мониторинга нагрузки используйте:
- 📊 PerfMon (Windows) с счётчиками
SQLServer:Buffer Managerи1C:Enterprise 8.3. - 🖥️ pgAdmin или SQL Server Profiler для анализа медленных запросов.
Если пользователи жалуются на "подвисания", включите в 1С режим отладки производительности: в conf.cfg добавьте EnablePerformanceCounters=1 и анализируйте логи.
FAQ: Частые вопросы по подключению базы к серверу 1С
Можно ли перенести базу с файлового варианта на сервер без остановки работы?
Нет, для преобразования файловой базы в клиент-серверную требуется монопольный доступ. Рекомендуем выполнить перенос в нерабочее время или создать резервную копию, а затем восстановить её на сервере.
Какая СУБД лучше для 1С: SQL Server или PostgreSQL?
Выбор зависит от задач:
- SQL Server: лучше интегрируется с Windows, поддерживает
CLR-процедуры, но требует лицензии. - PostgreSQL: бесплатная, стабильная, но может потребовать дополнительной настройки для высоких нагрузок.
Для небольших баз (до 50 ГБ) разница в производительности минимальна.
Как перенести базу с одного сервера 1С на другой?
Используйте утилиту 1cv8 с ключами /DumpIB и /RestoreIB:
- Создайте дамп на исходном сервере.
- Перенесите файл
.dtна новый сервер. - Восстановите дамп в новом кластере.
Альтернатива — репликация на уровне СУБД (например, SQL Server Replication).
Почему после переноса не работают отчёты или обработки?
Частая причина — несовпадение версий конфигурации. Проверьте:
- Версию платформы 1С на сервере и клиентах (должны совпадать).
- Версию конфигурации базы (в Конфигураторе нажмите
Конфигурация → Сравнить конфигурации).
Если конфигурация устарела, обновите её через Конфигурация → Обновить конфигурацию базы данных.
Как ограничить доступ к базе по IP-адресам?
В файле conf.cfg кластера добавьте секцию:
[AllowedAddresses]
1=192.168.1.0/24
2=10.0.0.5
После изменения перезапустите службу 1C:Enterprise 8.3 Server Agent.