Администрирование · 9 мин
Как перенести базу 1С на сервер
Как перенести базу 1С на сервер: выгрузка dt, перенос через SQL, настройка сервера 1С, типичные ошибки и проверка результата после миграции.
Перенос базы 1С на сервер — типовая задача при росте компании: файловый вариант перестаёт справляться с нагрузкой, появляются блокировки, медленно открываются документы и отчёты. Решение — перевести информационную базу в клиент-серверный режим работы с СУБД (MS SQL Server, PostgreSQL или другой поддерживаемой).
Существует два основных сценария: перенос через выгрузку в файл .dt (универсальный и самый безопасный способ) и перенос средствами самой СУБД (быстрее для больших баз, но требует опыта администрирования). Выбор зависит от размера базы, допустимого времени простоя и квалификации специалиста.
Перед началом работ обязательно сделайте резервную копию базы и проверьте, что версии платформы 1С на старом и новом месте совместимы. Ниже разобраны оба сценария по шагам, а также проверка результата и типичные ошибки.
Подготовка: что проверить до переноса
Сначала убедитесь, что инфраструктура готова. На сервере должны быть установлены: сервер 1С:Предприятия той же версии платформы (или новее, но совместимой), СУБД с созданным экземпляром, а также настроенные права доступа. Учётная запись, от имени которой работает сервер 1С, должна иметь права на создание баз данных в СУБД.
Проверьте режим совместимости конфигурации: некоторые старые конфигурации требуют включения специальных настроек в СУБД. Для MS SQL обычно рекомендуется отключить автосжатие (autoshrink), настроить модель восстановления и убедиться, что collation соответствует требованиям платформы.
Оцените объём базы и время простоя. Выгрузка .dt базы в 30–50 ГБ может занять несколько часов, а загрузка — ещё больше. Если бизнес не может ждать, планируйте перенос на ночь или выходные либо используйте перенос средствами СУБД.
Подойдёт перенос через .dt без специальной подготовки
Рассмотрите перенос средствами СУБД — выгрузка .dt займёт часы
На сервере платформа должна быть не старше той, где работала база
Планируйте репетицию переноса и перенос средствами СУБД
Способ 1: перенос через выгрузку в файл .dt
Это универсальный метод, не зависящий от типа СУБД. Выгрузка .dt содержит и данные, и конфигурацию, поэтому подходит и для переезда между разными СУБД, и для смены версии платформы.
Выгрузка базы
Завершите работу всех пользователей в базе — в монопольном режиме выгрузка пройдёт быстрее и без риска несогласованности. Откройте конфигуратор, перейдите в меню «Администрирование» → «Выгрузить информационную базу» и укажите путь к файлу .dt. Диск должен иметь свободное место с запасом: файл .dt обычно меньше базы, но для больших баз всё равно занимает гигабайты.
Создание базы на сервере и загрузка
Откройте консоль управления сервером 1С (или используйте диалог добавления базы при запуске клиента) и создайте новую информационную базу в клиент-серверном режиме. При создании укажите имя базы в кластере, сервер СУБД, имя базы данных и учётные данные. Оставьте базу пустой — конфигурацию и данные загрузите из .dt.
Затем откройте созданную базу в конфигураторе и выполните «Администрирование» → «Загрузить информационную базу», указав файл выгрузки. После загрузки платформа может предложить обновить конфигурацию базы данных — согласитесь.
- 1Сделайте резервную копию исходной базы
- 2Завершите сеансы пользователей
- 3Выгрузите базу в .dt через конфигуратор
- 4Создайте пустую базу на сервере 1С с привязкой к СУБД
- 5Загрузите .dt через конфигуратор в новую базу
- 6Выполните обновление конфигурации базы данных при запросе
- 7Проверьте вход пользователей и работу отчётов
Способ 2: перенос средствами СУБД
Если база большая и .dt-выгрузка неприемлемо долгая, переносите данные напрямую через СУБД. Для MS SQL это полный бэкап базы данных и его восстановление на целевом сервере; для PostgreSQL — pg_dump и pg_restore. Важно: так переносятся только данные в рамках одной и той же СУБД.
После восстановления базы данных создайте в консоли сервера 1С новую информационную базу, указав существующую базу данных вместо создания новой. Сервер 1С подключится к ней и при первом обращении выполнит необходимые служебные операции.
Настройка после переноса
После успешной загрузки обновите список баз у пользователей: в диалоге запуска укажите новое подключение вида «Сервер 1С» с именем кластера и имени базы. Старое файловое подключение удалите или переименуйте, чтобы никто не продолжил работать в устаревшей копии.
Проверьте и при необходимости перенастройте регламентные задания: в клиент-серверном режиме они выполняются на сервере, а не на компьютере пользователя. Также проверьте права доступа, настройки журнала регистрации и параметры блокировок — в серверном режиме используется управляемый режим блокировок данных.
Проверка результата
Формальное завершение загрузки без ошибок — ещё не гарантия успеха. Войдите в базу под несколькими учётными записями с разными ролями, откройте ключевые документы за последние периоды, сформируйте основные отчёты (оборотно-сальдовую ведомость, отчёт по продажам) и сравните итоги с исходной базой.
Дополнительно выполните тестирование и исправление информационной базы в конфигураторе (без разрушающих операций вроде удаления ссылок) — это выявит скрытые проблемы целостности после переноса.
Как проверить результат
Все роли входят без ошибок лицензий и прав
Ошибки «не обнаружено лицензий» или отказ в доступе
ОСВ и ключевые отчёты совпадают с исходной базой
Расхождения в суммах или пустые отчёты
Задания выполняются по расписанию на сервере
Задания не стартуют или падают с ошибками
Нет массовых ошибок после переноса
Повторяющиеся ошибки СУБД или блокировок
Типичные ошибки и как их избежать
Чаще всего проблемы возникают из-за спешки и пропуска подготовительных шагов. Разберём самые распространённые.
Отдельно отметим ситуацию с очень большими базами: если выгрузка .dt регулярно падает по таймауту или нехватке памяти, не пытайтесь повторять её бесконечно — переходите к переносу средствами СУБД или привлекайте специалиста по администрированию 1С.
Как выбрать способ переноса
FAQ
Можно ли перенести базу 1С на сервер без остановки работы пользователей?
Полностью без простоя — нет: на момент финальной выгрузки или бэкапа пользователей нужно отключить, чтобы не потерять последние изменения. Минимизировать простой можно репетицией переноса заранее и переносом средствами СУБД в нерабочее время.
Чем отличается выгрузка .dt от резервной копии СУБД?
Файл .dt создаётся средствами платформы 1С и содержит конфигурацию и данные в платформенном формате — он переносим между разными СУБД и версиями. Бэкап СУБД — это копия базы данных на уровне сервера БД, он быстрее, но привязан к конкретной СУБД и её версии.
Нужно ли обновлять платформу при переезде на сервер?
Не обязательно, но версия платформы на сервере не должна быть старше той, на которой работала база. Если обновление планируется, разумно совместить его с переездом, предварительно проверив совместимость конфигурации.
Почему после переноса пользователи не могут войти в базу?
Наиболее частые причины: на сервере 1С не установлены или не активированы клиентские лицензии, неверно указано имя базы в списке подключений у пользователя, либо у учётной записи сервера 1С нет прав на базу данных в СУБД.
Что делать со старой файловой базой после переезда?
Перенесите её в архив и ограничьте к ней доступ, чтобы никто не продолжил вносить данные. Храните копию как минимум до полной проверки работоспособности серверной базы и сверки отчётов.
Что важно запомнить
Перед переносом сделайте резервную копию и проверьте версии платформы. Небольшие базы переносите через .dt, большие — средствами СУБД. После переезда сверьте итоги отчётов, проверьте лицензии и регламентные задания, а старую файловую базу закройте от изменений.