Перенос базы 1С на другой компьютер без потери данных

· 9 мин

Содержание

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

Копировать папку установленной программы (C:\Program Files\1cv8) бесполезно: так платформа не заработает. Ставьте её заново с дистрибутива, а переносите только данные.

Сначала определите, какая у вас база. Это видно в окне запуска 1С: выделите базу и посмотрите на строку под списком. Путь к папке (D:\Bases\Trade) значит файловый режим. Имя сервера и база (srv-1c\buh) значит клиент-серверный.

Что проверить перед копированием

Пять минут подготовки спасают от потери данных.

  1. Узнайте точный номер платформы на старом компьютере: в окне запуска 1С, меню «О программе», либо в списке установленных программ Windows.
  2. Поставьте на новый компьютер платформу того же номера или новее. Базу, открытую в новой версии платформы, обратно в старую часто не вернуть.
  3. Проверьте лицензию. Программная лицензия привязана к компьютеру, аппаратный ключ перенесите физически. Без лицензии база не запустится (исключение — учебная версия).
  4. Выясните, где лежат внешние файлы: печатные формы, внешние обработки, выгрузки обмена. Пути к ним хранятся внутри базы и на новом месте могут не совпасть.
  5. Попросите всех выйти из базы. Копировать «на ходу» нельзя.

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

Подготовьте также носитель. База, которую вы видите как 200 МБ в папке, при копировании по сети через Wi‑Fi переносится долго. Лучше флешка или внешний диск, либо кабельная сеть.

Копирование файловой базы папкой

Это самый быстрый способ. Файловая база хранится в одном файле 1Cv8.1CD внутри папки, рядом лежат служебные файлы.

Порядок действий

  1. Закройте 1С на всех компьютерах, где открыта эта база.
  2. Найдите папку базы. Путь указан в окне запуска.
  3. Скопируйте папку целиком на флешку или по сети. Берите всю папку, а не только файл 1Cv8.1CD.
  4. Вставьте её на новом компьютере в удобное место, например D:\1C\Trade. Избегайте корня системного диска и папок с кириллицей и пробелами, чтобы не ловить проблемы со службами и скриптами.
  5. Запустите 1С, нажмите «Добавить», выберите «Добавление в список существующей информационной базы» и укажите новую папку.

Если база лежит на общем сетевом диске и пользователи заходят через \\server\share\Trade, то переносить на «другой компьютер» можно просто папку целиком, а клиентам поменять путь.

Не копируйте файл 1Cv8.1CD, пока в базе кто-то работает. Копия получится неконсистентной: она может открыться, но выдать ошибку при первом же проведении документов.

Файлы 1Cv8.1CL и 1Cv8.cdn и каталоги блокировок в копию можно не брать. Платформа создаст их заново. Но проще скопировать всю папку: так вы ничего не потеряете.

Что может спросить платформа

При первом запуске скопированной базы 1С иногда спрашивает, база перемещена или скопирована. Это нужно, чтобы корректно настроить обмен с другими базами. Если вы не планируете вести две копии одновременно, а старую базу закроете, выбирайте «Перемещена». Если обе базы продолжат жить своей жизнью, выбирайте «Скопирована», иначе обмены и регламентные задания могут начать двоить данные.

Кэш и список баз

Список баз в окне запуска хранится в профиле пользователя Windows, а не в папке базы. Поэтому на новом компьютере его придётся собрать заново: добавить каждую базу вручную. Если нужно перенести весь список разом, скопируйте файл ibases.v8i из профиля пользователя (обычно он лежит в AppData\Roaming\1C\1CEStart) и подключите его в настройках окна запуска.

Локальный кэш (AppData\Local\1C\1cv8) переносить не надо. Платформа создаст его сама при первом входе, а перенесённый кэш с другого компьютера только мешает. Если после переезда база ведёт себя странно, закройте 1С и удалите папку кэша нужной базы: она восстановится, но первый запуск будет чуть дольше.

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

Выгрузка в файл .dt и загрузка на новом месте

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

Выгрузка

  1. Запустите базу в режиме «Конфигуратор», выбрав пользователя с правом администратора.
  2. Откройте меню Администрирование → Выгрузить информационную базу.
  3. Укажите имя файла и папку. Дождитесь окончания: на большой базе это десятки минут.

Загрузка

  1. На новом компьютере создайте пустую базу: в окне запуска «Добавить → Создание новой информационной базы → Создание информационной базы без конфигурации».
  2. Откройте её в Конфигураторе.
  3. Выберите Администрирование → Загрузить информационную базу и укажите файл .dt.
  4. Согласитесь с заменой данных. Дальше платформа всё сделает сама.

Загрузка требует монопольного доступа: если база открыта где-то ещё, платформа попросит закрыть остальные сеансы.

СпособКогда использоватьРиски
Копия папкиФайловая база, версия платформы та же или новееКопия «на ходу» может оказаться битой
Файл .dtСмена режима (файловая ↔ сервер), перенос между версиями платформыДолго на больших базах, нужен Конфигуратор
Резервная копия СУБДКлиент-серверная база, тот же тип СУБДНужны права администратора СУБД

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

Здесь сама база лежит в СУБД (MS SQL Server или PostgreSQL), а на сервере 1С хранятся лишь настройки кластера. Копировать нужно и то и другое, но проще всего поступить так.

Через выгрузку .dt

Если база небольшая, делайте выгрузку по схеме выше. На новом сервере создайте базу в консоли администрирования серверов 1С и загрузите в неё .dt. Это самый безопасный вариант, особенно если версия СУБД на новом сервере другая.

Через резервную копию СУБД

Для больших баз быстрее резервная копия.

  1. На старом сервере сделайте полную резервную копию базы средствами СУБД: в MS SQL Server — BACKUP DATABASE или мастер в Management Studio, в PostgreSQL — pg_dump.
  2. Скопируйте файл резервной копии на новый сервер.
  3. Восстановите копию в СУБД на новом сервере.
  4. В консоли администрирования 1С создайте информационную базу с тем же именем базы данных СУБД и тем же типом СУБД. Поле «Создавать базу данных в случае её отсутствия» не отмечайте: база уже есть.

Для MS SQL Server запрос восстановления выглядит так:

RESTORE DATABASE [buh] FROM DISK = N'D:\backup\buh.bak' WITH REPLACE

Имя buh замените на своё, а путь к файлу копии подставьте реальный.

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

Типичная ловушка: версия СУБД на новом сервере ниже, чем на старом. Резервную копию из новой версии MS SQL Server в старую восстановить нельзя. Проверьте это заранее, а в сомнительных случаях идите через .dt.

Права доступа и сетевые пути

После копирования база нередко открывается только у администратора. Причина почти всегда в правах Windows.

Файловая база

Пользователи, которые работают с базой, должны иметь права на изменение в папке с 1Cv8.1CD. Если база на общем диске, права выдаются на сетевую папку (общий доступ) и на саму папку (вкладка «Безопасность»). Проверьте оба уровня.

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

Клиент-серверная база

Здесь доступ к файлам базы нужен учётной записи, под которой запущена служба сервера 1С, а не пользователям. По умолчанию это USR1CV8. Клиентские компьютеры должны достучаться до сервера по сети. Агент сервера слушает порт 1540, менеджер кластера — 1541, рабочие процессы получают порты из диапазона, заданного в свойствах рабочего сервера. Если на новой машине включён брандмауэр, откройте эти порты.

Пути, которые хранятся внутри базы

Эти пути не меняются сами при переносе:

  • 📁 каталоги обмена с банком и другими базами;
  • 📄 внешние печатные формы и обработки, подключённые по ссылке на файл;
  • 🖨 настройки принтеров и сканеров, привязанные к конкретному компьютеру;
  • 🔑 сертификаты электронной подписи, установленные в хранилище конкретного компьютера.

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

Решение типичных ошибок после переноса

Диагностика: выберите симптом

После запуска в новой копии стоит проверить несколько вещей:

  1. Открывается ли справочник номенклатуры или контрагентов и совпадает ли число элементов.
  2. Проведите тестовый документ и удалите его.
  3. Сформируйте оборотно-сальдовую ведомость за несколько периодов и сверьте с данными в старой базе.
  4. Проверьте подключённое оборудование и электронную подпись.

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

Когда копировать базу не нужно

Бывают случаи, когда лучше не копировать, а настроить доступ.

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

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

Частые вопросы

Можно ли просто скопировать папку 1cv8 с программой?
Нет. Платформа регистрирует компоненты в системе, поэтому её нужно установить штатным установщиком. Переносите только базу.
Лицензия 1С переедет вместе с базой?
Нет. Лицензия привязана к ключу или к компьютеру, а не к базе. Аппаратный ключ нужно физически переставить, программную лицензию — получить заново для нового компьютера.
Сколько времени займёт перенос?
Копирование папки на 1–2 ГБ по локальной сети занимает несколько минут. Выгрузка и загрузка .dt той же базы может занять от 15 минут до часа и больше, это зависит от диска и объёма.
Можно ли перенести базу из файловой в клиент-серверную?
Да, через файл .dt: выгрузите из файловой базы и загрузите в пустую базу на сервере. Напрямую копировать файл 1Cv8.1CD в СУБД нельзя.
Нужно ли отключать пользователей на время копирования?
Да. Копия базы, которой в этот момент пользуются, может оказаться неконсистентной. Для клиент-серверной базы пользователей тоже лучше отключить на время резервного копирования, хотя СУБД умеет делать копию и под нагрузкой.
Как проверить, что перенос прошёл успешно?
Сравните число элементов в основных справочниках и оборотно-сальдовую ведомость на одну и ту же дату в старой и новой базе. Совпадение итогов говорит о том, что данные не потерялись.