Администрирование · 8 мин
Как перенести базу 1С с одного сервера на другой
Перенос базы 1С на другой сервер: выгрузка через конфигуратор, перенос файловой и клиент-серверной базы, настройка SQL и проверка результата.
Перенос базы 1С на новый сервер — типовая задача при апгрейде оборудования, переезде в облако или смене хостинга. Сама процедура несложна, но ошибки на этапе выгрузки или восстановления могут привести к потере данных, поэтому действовать нужно по чёткому плану и с обязательной резервной копией.
Способ переноса зависит от режима работы базы: файловый вариант переносится копированием файла, клиент-серверный — через выгрузку в конфигураторе или средствами СУБД (MS SQL, PostgreSQL). Ниже разобраны оба сценария с проверкой результата и типичными ошибками.
Что подготовить перед переносом
Сначала определите, в каком режиме работает база: файловом или клиент-серверном. Это видно в списке информационных баз при запуске 1С — в строке подключения указан либо путь к каталогу, либо имя сервера 1С и кластера. От этого зависит весь дальнейший порядок действий.
Проверьте версии платформы на старом и новом сервере. Платформа на новом сервере должна быть не ниже той, на которой работала база: обратная совместимость «сверху вниз» не гарантируется. Также убедитесь, что на новом сервере достаточно свободного места — для выгрузки .dt и развёртывания базы потребуется запас в 2–3 размера самой базы.
Завершите все активные сеансы пользователей и отключите регламентные задания. В клиент-серверном режиме это делается через консоль администрирования сервера 1С, в файловом — через «Администрирование → Активные пользователи» внутри базы. Работающие пользователи во время выгрузки — главная причина расхождений в данных.
Перенос файловой базы копированием
Файловая база — это один файл 1Cv8.1CD в каталоге базы. Перенос сводится к копированию этого файла на новый сервер. Каталог базы можно найти в списке информационных баз, выделив базу и посмотрев параметр «File» в строке подключения.
После копирования на новом сервере добавьте базу в список информационных баз: в окне запуска 1С нажмите «Добавить», выберите «Добавление в список существующей информационной базы» и укажите новый путь к каталогу. Если база используется по сети, настройте общий доступ к папке и права на запись для пользователей.
- 1Завершите все сеансы и убедитесь, что база никем не открыта
- 2Скопируйте каталог базы целиком на новый сервер
- 3На новом сервере добавьте базу в список информационных баз с новым путём
- 4Запустите конфигуратор и выполните тестирование и исправление
- 5Откройте базу в режиме предприятия и проверьте ключевые отчёты
Перенос клиент-серверной базы через выгрузку .dt
Универсальный способ для клиент-серверного режима — выгрузка информационной базы в файл .dt через конфигуратор. Откройте конфигуратор, перейдите в «Администрирование → Выгрузить информационную базу» и укажите путь для сохранения файла. Выгрузка содержит и данные, и конфигурацию.
На новом сервере создайте пустую информационную базу через консоль администрирования кластера 1С (без создания структуры данных в СУБД на этом этапе достаточно указать параметры подключения). Затем откройте её конфигуратором и выполните «Администрирование → Загрузить информационную базу», выбрав файл .dt.
Учтите ограничение: для очень больших баз (десятки гигабайт) выгрузка в .dt идёт долго и требует много памяти. В этом случае надёжнее переносить базу средствами самой СУБД.
Перенос базы средствами SQL-сервера
Если база работает на MS SQL Server, быстрее сделать полный бэкап базы средствами СУБД (например, через SQL Server Management Studio: правый клик по базе → Tasks → Back Up → Full) и восстановить его на новом сервере. Для PostgreSQL используются утилиты pg_dump и pg_restore.
После восстановления базы данных на новом SQL-сервере нужно зарегистрировать информационную базу в кластере 1С нового сервера: в консоли администрирования создайте информационную базу, укажите новый сервер СУБД, имя базы данных и учётные данные. Если база данных уже существует, отметьте соответствующую опцию, чтобы кластер не создавал её заново.
Сравнение способов переноса
Подходит для баз небольшого и среднего размера и при смене типа СУБД. Ограничение: медленно на больших объёмах, требует много памяти и времени простоя.
Оптимально для больших баз при переезде на тот же тип СУБД. Быстрее и надёжнее, но не работает при смене MS SQL на PostgreSQL или наоборот.
Только для файлового режима. Самый простой вариант, ограничение — требуется полное завершение сеансов.
Настройка после переноса
После восстановления базы обновите параметры подключения у пользователей: в списке информационных баз должен быть указан новый сервер. Если используется веб-клиент или тонкий клиент через веб-сервер, заново опубликуйте базу на веб-сервере нового компьютера.
Проверьте регламентные и фоновые задания: они могут быть заблокированы или ссылаться на старые пути. Также проверьте настройки обменов данными, подключение торгового оборудования, пути к файловым томам хранения присоединенных файлов и параметры почты — эти настройки часто привязаны к старой инфраструктуре.
Если на новом сервере установлена другая разрядность или версия СУБД, выполните реиндексацию и обновление статистики базы данных — это ускорит работу после переезда.
Проверка результата переноса
После переноса запустите конфигуратор и выполните «Администрирование → Тестирование и исправление» с проверкой логической и ссылочной целостности. Это выявит повреждения, которые могли возникнуть при выгрузке или копировании.
Затем откройте базу в режиме предприятия: сверьте оборотно-сальдовую ведомость или другой ключевой отчёт с тем же отчётом на старом сервере за один и тот же период. Совпадение итогов — главный признак корректного переноса. Проверьте также запуск обменов, печать документов и работу хотя бы одного пользователя под его обычной учётной записью.
Как проверить результат
Завершается без ошибок целостности
Найдены битые ссылки или ошибки таблиц
Итоги совпадают до копейки
Расхождения в суммах или количестве
Задания выполняются по расписанию, обмены проходят
Задания заблокированы или завершаются с ошибкой
Все роли входят, документы открываются и печатаются
Ошибки прав, лицензий или подключения
Старый сервер не выключайте сразу: оставьте базу на нём в режиме «только чтение» минимум на несколько дней. Если обнаружится, что какие-то данные не перенеслись (например, присоединенные файлы или настройки), их можно будет забрать без аврала.
Часто задаваемые вопросы
Можно ли перенести базу 1С без остановки работы пользователей?
Полностью без простоя — нет. Выгрузка или бэкап делаются только при завершённых сеансах, иначе данные будут несогласованными. Минимизировать простой можно, выполнив бэкап средствами СУБД ночью и подготовив новый сервер заранее.
Чем отличается выгрузка .dt от бэкапа SQL?
Файл .dt создаётся средствами 1С и не зависит от типа СУБД — через него можно переехать с MS SQL на PostgreSQL. Бэкап SQL быстрее и подходит для больших баз, но привязан к конкретной СУБД и её версии.
Нужно ли переносить лицензии 1С на новый сервер?
Да. Программные лицензии активируются заново на новом сервере (резервные пин-коды используются при смене оборудования), аппаратный ключ HASP достаточно физически переставить и установить драйвер. Проверьте лицензии до отключения старого сервера.
База после переноса работает медленно. Что делать?
Обновите статистику и выполните реиндексацию в СУБД, проверьте, что на новом сервере тот же релиз платформы и достаточно оперативной памяти. Также убедитесь, что план обслуживания базы (если он был) перенастроен на новом SQL-сервере.
Как перенести базу с файлового режима на клиент-серверный?
Сделайте выгрузку базы в файл .dt через конфигуратор, создайте пустую информационную базу в кластере сервера 1С и загрузите в неё этот файл. После загрузки настройте права пользователей и регламентные задания уже в клиент-серверном режиме.
Что важно запомнить
Перенос начинается с резервной копии и завершения всех сеансов. Файловая база копируется как файл, клиент-серверная — через .dt или бэкап СУБД. После переезда обязательны тестирование целостности, сверка отчётов и проверка регламентных заданий, а старый сервер стоит сохранить доступным на случай дозабора данных.