Перенос информационной базы 1С:Предприятие — это критически важная процедура, с которой регулярно сталкиваются системные администраторы и бухгалтеры при смене оборудования или обновлении инфраструктуры. Независимо от того, переезжаете ли вы на новый физический сервер, меняете платформу виртуализации или просто хотите переместить данные в облако, понимание архитектуры хранения данных является фундаментом успеха.

Процесс миграции кардинально отличается в зависимости от выбранного режима работы: файловый вариант или клиент-серверный вариант с использованием СУБД. Ошибки на этапе подготовки могут привести к потере данных или длительному простою предприятия, поэтому к вопросу следует подходить с максимальной ответственностью. В этой статье мы детально разберем все этапы, начиная от предварительной диагностики и заканчивая финальным тестированием работоспособности системы.

Подготовка к миграции и анализ текущей конфигурации

Перед началом любых активных действий необходимо провести тщательную ревизию текущего состояния системы. Вы должны четко понимать, какой тип базы данных используется в данный момент, так как от этого зависит выбор инструмента для переноса. Если вы работаете в файловом режиме, данные хранятся в папке на диске, тогда как в варианте с SQL Server или PostgreSQL данные распределены по таблицам внутри СУБД.

Обязательно проверьте целостность базы перед началом работ. Для этого запустите утилиту chdbfl.exe для файловых баз или используйте стандартные средства проверки в режиме Конфигуратора для клиент-серверных вариантов. Поврежденные индексы или логические ошибки могут проявиться только после переноса, что усложнит диагностику.

☑️ Чек-лист перед переносом базы 1С

Выполнено: 0 / 4

Важно также зафиксировать текущую версию платформы 1С:Предприятие. При переносе на новый сервер часто возникает соблазн сразу обновить платформу, но правильнее сначала перенести базу в неизменном виде, убедиться в её работоспособности, и только потом проводить обновление. Это позволит изолировать возможные проблемы миграции от проблем совместимости версий.

Метод переноса файловой базы данных

Самый простой сценарий касается переноса файловой базы. В этом случае вся информация хранится в одном каталоге, что значительно упрощает процедуру копирования. Вам достаточно скопировать содержимое папки базы данных на новый носитель или в новую директорию на целевом сервере.

Однако простое копирование файлов через проводник Windows может быть рискованным, если в базе в этот момент работают пользователи или фоновые задания. Физическое копирование файлов базы данных во время активной записи может привести к рассинхронизации файлов 1Cv8.1CD и служебных файлов конфигурации.

💡

Используйте функцию "Выгрузить базу данных" в конфигураторе для создания единого файла .dt, если объем базы не превышает несколько гигабайт. Это гарантирует целостность данных даже при активном использовании.

Для безопасного переноса рекомендуется использовать режим монопольного доступа. Запустите 1С в режиме Конфигуратора с ключом /F или через список баз, выбрав пункт "Изменить" и установив галочку "Монопольный режим". После этого завершите все сеансы пользователей. Теперь можно смело копировать файлы, не опасаясь повреждения структуры.

После копирования папки на новое место необходимо зарегистрировать базу в списке информационных баз на новом компьютере. Для этого запустите 1cestart.exe, нажмите кнопку "Добавить", выберите "Существующая информационная база" и укажите путь к новой папке. Система автоматически подхватит настройки и позволит запустить приложение.

Перенос клиент-серверной базы через выгрузку в DT

Если ваша база работает в режиме клиент-сервер (например, на MS SQL Server), простого копирования файлов недостаточно. Данные разбросаны по множеству таблиц, и прямое копирование файлов базы данных SQL запрещено, пока сервис СУБД активен. Наиболее универсальным методом является использование формата выгрузки .dt.

Этот метод удобен тем, что позволяет не только переносить данные, но и менять тип СУБД. Например, вы можете переехать с Microsoft SQL Server на PostgreSQL, что часто делается для экономии лицензионных отчислений. Процесс начинается с выгрузки базы в файл обмена.

В режиме Конфигуратора выберите меню "Администрирование" -> "Выгрузить информационную базу". Укажите путь для сохранения файла с расширением .dt. Обратите внимание, что размер этого файла может значительно превышать размер базы в сжатом виде на диске, так как это текстовое представление данных.

Особенности формата DT

Файл .dt содержит не только данные, но и структуру метаданных, права доступа и настройки пользователей. При загрузке этого файла в пустую базу система автоматически создаст всю необходимую структуру таблиц в новой СУБД.

На принимающей стороне вам потребуется создать пустую базу данных в СУБД и зарегистрировать её в кластере серверов 1С. Затем, подключившись к этой пустой базе в режиме Конфигуратора, выберите "Администрирование" -> "Загрузить информационную базу" и укажите ранее созданный файл .dt. Процесс загрузки может занять от нескольких минут до нескольких часов в зависимости от объема данных.

Миграция через резервное копирование СУБД (Native Backup)

Для баз большого объема (сотни гигабайт и выше) использование формата .dt становится неэффективным из-за огромного времени выгрузки и загрузки. В таких случаях профессионалы используют нативные средства резервного копирования самой СУБД. Этот метод требует прав администратора базы данных.

В MS SQL Server это делается через SQL Server Management Studio (SSMS). Вы создаете полный бекап (Full Backup) базы данных, копируете полученный файл .bak на новый сервер и выполняете операцию восстановления (Restore Database). При этом важно учесть права доступа и владельцев базы данных.

Метод переноса Рекомендуемый объем Сложность Время простоя
Копирование папки (Файловая) До 10 ГБ Низкая Минуты
Выгрузка в DT До 50 ГБ Средняя Часы
Native Backup (SQL) От 50 ГБ до ТБ Высокая Зависит от диска
Репликация / Логическая копия Любой Очень высокая Минимальное

После восстановления базы данных на новом сервере необходимо выполнить процедуру регистрации в кластере 1С. Если имя сервера баз данных изменилось, вам потребуется обновить параметры подключения в свойствах информационной базы в консоли администрирования серверов 1С.

💡

При использовании нативного бекапа СУБД структура файлов 1С не меняется, что делает этот метод самым быстрым для больших объемов, но он привязывает вас к той же версии и редакции СУБД.

Не забудьте проверить параметры сортировки (Collation) базы данных. Если на старом сервере использовалась сортировка Cyrillic_General_CI_AS, а на новом создается база с другой сортировкой, это может привести к ошибкам при выполнении запросов и работе с текстовыми полями.

Настройка подключения и права доступа

После физического переноса данных наступает этап настройки доступа. В клиент-серверном варианте критически важно настроить учетные записи SQL. Пользователь, от имени которого 1С подключается к базе, должен иметь права db_owner на конкретную базу данных.

Если вы используете аутентификацию Windows, убедитесь, что учетная запись службы сервера 1С (usr1cv8 или аналогичная) имеет права на вход в SQL Server и доступ к базе. Частой ошибкой является перенос базы на сервер, где эта учетная запись отсутствует или имеет измененный пароль.

⚠️ Внимание: При переносе базы на другой домен или рабочую группу настройки безопасности Windows могут стать невалидными. Вам может потребоваться пересоздать логины в SQL Server и сопоставить их с пользователями базы данных через скрипт sp_change_users_login или аналогичные процедуры.

Для файловых баз на новом сервере необходимо настроить права доступа к папке на уровне файловой системы NTFS. Пользователь, под которым запускается сервер 1С или пользовательский клиент, должен иметь права на чтение и запись в директорию с базой данных. Отсутствие прав на запись приведет к ошибке "Монопольный режим недоступен" или невозможности проведения документов.

Также проверьте настройки брандмауэра. Порт сервера 1С (по умолчанию 1540 и 1541) и порт СУБД (например, 1433 для SQL) должны быть открыты для входящих подключений с клиентских рабочих мест. Без этого тонкий клиент не сможет увидеть базу в списке.

📊 Какой способ переноса вы планируете использовать?
Копирование файлов (Файловая база)
Выгрузка в .dt файл
Нативный бекап SQL
Помощь специалиста 1С

Тестирование и пост-миграционная оптимизация

Завершающий этап — это всестороннее тестирование работоспособности системы. Не ограничивайтесь простым запуском программы. Проведите серию тестовых операций: попробуйте провести документ, сформировать сложный отчет, выполнить закрытие месяца. Это позволит выявить скрытые ошибки, которые не проявляются при старте.

После переноса клиент-серверной базы настоятельно рекомендуется выполнить реструктуризацию таблиц и обновление статистики в СУБД. Со временем фрагментация данных может снижать производительность, а смена сервера — отличный повод навести порядок. В SQL Server это делается командой DBCC SHRINKDATABASE (с осторожностью) и обновлением статистики.

Обратите внимание на расписание регламентных заданий. После переноса пути к скриптам или внешним обработкам могут измениться. Проверьте в журнале регистрации, запускаются ли фоновые задания, такие как отправка почты, выгрузка данных на сайт или обмен с другими системами.

⚠️ Внимание: Интерфейсы и точные названия пунктов меню могут отличаться в зависимости от версии платформы 1С:Предприятие (8.2, 8.3, 8.3.20+) и конфигурации. Всегда сверяйтесь с официальной документацией к вашей конкретной версии ПО перед выполнением деструктивных операций.

Если скорость работы базы на новом оборудовании вас не устраивает, проанализируйте дисковую подсистему. Для 1С критически важна скорость случайного чтения и записи (IOPS). Размещение файлов базы и файлов журналов регистрации на разных физических дисках или RAID-массивах может существенно ускорить работу системы.

Частые вопросы при переносе 1С

Можно ли перенести базу 1С на более старую версию платформы?

Нет, это невозможно. Формат хранения данных в 1С является обратно несовместимым. Если база была обновлена на версии 8.3.20, вы не сможете запустить её на платформе 8.3.15. Перед переносом на сервер со старой версией необходимо сначала сделать откат версии базы на старом сервере.

Что делать, если после переноса база открывается в режиме "Только чтение"?

Скорее всего, у пользователя или службы 1С нет прав на запись в папку с базой (для файлового варианта) или нарушены права в СУБД. Проверьте свойства папки в безопасности Windows и убедитесь, что галочка "Только чтение" снята с атрибутов файлов.

Нужно ли переустанавливать конфигурацию после переноса данных?

При использовании выгрузки в .dt или нативного бекапа СУБД конфигурация переносится вместе с данными. Отдельная установка конфигурации не требуется, если только вы не создаете совершенно пустую базу для последующей загрузки только части данных.

Как перенести базу, если имена серверов совпадают?

Если вы переносите базу на новый физический сервер, но оставляете то же имя (через DNS или смену имени машины), убедитесь, что старый сервер выключен из сети. Иначе возникнет конфликт имен и IP-адресов, что приведет к нестабильной работе клиентов.

Можно ли прервать процесс загрузки базы из DT файла?

Крайне не рекомендуется прерывать процесс загрузки. Это приведет к повреждению базы данных, и её придется удалять и создавать заново. Всегда рассчитывайте время и убедитесь в стабильности питания сервера перед началом длительной операции.