К статье
Практический материал

Администрирование · 11 мин

Как сделать копию базы 1С: способы, инструкции и проверка результата

Как сделать копию базы 1С через выгрузку dt, конфигуратор и средства СУБД. Пошаговые инструкции, проверка результата, ошибки и FAQ.

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

Универсальный метод, который работает в обоих режимах, — выгрузка базы в файл с расширением .dt через конфигуратор. Он не требует доступа к серверу СУБД и переносим между платформами, но на больших базах занимает заметное время и требует монопольного доступа. Для регулярных резервных копий клиент-серверных баз эффективнее использовать штатные средства SQL Server, PostgreSQL или другой СУБД.

Ниже разобраны все рабочие способы, порядок действий для каждого, способы проверить целостность копии и типичные ошибки, из-за которых копия оказывается битой или неполной.

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

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

Перед началом проверьте свободное место на диске. Файл .dt обычно занимает 10–30% от размера развёрнутой базы, но на базах с большими объёмами двоичных данных (присоединенные файлы, изображения) выгрузка может быть сопоставима с исходным размером. Для копирования файловой базы копированием файла потребуется место, равное размеру файла 1Cv8.1CD.

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

Способ 1. Выгрузка базы в файл .dt через конфигуратор

Это универсальный способ, который работает и для файловых, и для клиент-серверных баз. Результат — один файл с расширением .dt, содержащий и данные, и конфигурацию. Его можно загрузить в пустую базу на любом компьютере с подходящей версией платформы.

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

Чтобы загрузить копию обратно, создайте пустую информационную базу (без конфигурации), откройте её в конфигураторе и выберите «Администрирование → Загрузить информационную базу». После загрузки платформа предложит перезапустить конфигуратор — согласитесь.

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

Ограничения выгрузки в .dt

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

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

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

Узнать расположение базы можно в окне запуска 1С: выделите базу в списке — путь к каталогу отображается внизу окна. Альтернатива — открыть конфигуратор и посмотреть свойства базы.

Способ быстрый и надёжный при условии, что все сеансы завершены. Для автоматизации удобно использовать скрипт, который копирует файл с добавлением даты в имя, например по расписанию через планировщик задач Windows.

cmd
copy /Y "D:\Bases\Trade\1Cv8.1CD" "E:\Backup\Trade_%date:~-4,4%%date:~-7,2%%date:~-10,2%.1CD"

Способ 3. Копия клиент-серверной базы средствами СУБД

Для баз, работающих на MS SQL Server, PostgreSQL, Oracle или IBM DB2, штатный способ резервного копирования — средства самой СУБД. Такой подход быстрее выгрузки в .dt, поддерживает сжатие, расписание и инкрементные копии, а восстановление выполняется стандартной процедурой restore.

Для MS SQL Server резервная копия создаётся через SQL Server Management Studio: правый клик по базе → «Tasks → Back Up», тип Full, указание файла назначения. Для PostgreSQL используется утилита pg_dump с последующим восстановлением через pg_restore или psql.

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

Сравнение способов копирования

Выгрузка в .dt

Универсально и переносимо между СУБД, но медленно на больших базах и требует монопольного доступа

Копирование файла 1Cv8.1CD

Быстро и просто, но только для файловых баз и только при отсутствии активных сеансов

Backup средствами СУБД

Оптимально для клиент-серверных баз и регулярных копий, но требует доступа к серверу СУБД и навыков администрирования

Как создать тестовую копию рабочей базы

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

Для файловой базы достаточно скопировать каталог, добавить копию в список баз под именем вроде «Бухгалтерия ТЕСТ» и указать путь к новому каталогу. Для клиент-серверной — восстановите backup в базу данных с другим именем и зарегистрируйте её в кластере 1С как отдельную информационную базу.

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

Как проверить, что копия рабочая

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

Более строгая проверка — запуск процедуры «Тестирование и исправление» в конфигураторе (Администрирование → Тестирование и исправление) в режиме только проверки, без исправления. Для файловых баз также полезна проверка физической целостности утилитой chdbfl.exe из каталога установки платформы.

Сверьте контрольные показатели: количество документов за последний месяц, итоги ключевых отчётов (например, оборотно-сальдовой ведомости) в копии и в оригинале должны совпадать.

Контрольные точки

Как проверить результат

Запуск копии в пользовательском режиме
Норма

База открывается, разделы и документы доступны

Тревожный признак

Ошибки при запуске, сообщения о повреждении таблиц

Итоги отчётов в копии и оригинале
Норма

Обороты и остатки совпадают полностью

Тревожный признак

Расхождения в суммах или количестве документов

Тестирование и исправление (только проверка)
Норма

Проверка завершается без ошибок

Тревожный признак

Сообщения о битых ссылках или повреждённых данных

Типичные ошибки при копировании баз 1С

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

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

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

Типичные ошибки
01
Копирование файла базы при активных сеансах — копия оказывается повреждённой
02
Загрузка .dt в непустую базу — прежние данные целевой базы уничтожаются
03
Хранение копий на том же диске — при отказе диска теряется всё
04
Отсутствие проверки копии — о повреждении узнают только при восстановлении
05
Забытые обмены в тестовой копии — дублирующая отправка данных во внешние системы

Как автоматизировать регулярное копирование

Разовая копия перед обновлением не заменяет регулярное резервное копирование. Для файловых баз настройте задачу в планировщике Windows: скрипт завершает сеансы (или запускается в нерабочее время), копирует файл базы и складывает копии с датой в имени, удаляя устаревшие.

Для клиент-серверных баз используйте планы обслуживания в MS SQL Server или задания pg_dump/pg_basebackup по cron для PostgreSQL. Рекомендуемая схема — ежедневные полные копии с хранением нескольких последних поколений плюс копии журналов транзакций для восстановления на произвольный момент времени.

Итог

Что важно запомнить

Файловую базу копируют файлом 1Cv8.1CD или выгрузкой в .dt, клиент-серверную — выгрузкой в .dt или backup средствами СУБД. Всегда завершайте сеансы перед копированием, храните копии отдельно от рабочей базы и проверяйте их восстановлением, а в тестовых копиях отключайте обмены и регламентные задания.

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

Можно ли скопировать базу 1С, пока в ней работают пользователи?

Копировать файл 1Cv8.1CD при активных сеансах нельзя — копия будет повреждена. Выгрузка в .dt тоже требует монопольного доступа. Единственный вариант копирования «на горячую» — backup средствами СУБД для клиент-серверных баз: SQL Server и PostgreSQL умеют создавать согласованные копии без остановки работы.

Чем копия в .dt отличается от резервной копии СУБД?

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

Загрузится ли файл .dt на другой версии платформы?

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

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

Используйте в конфигураторе пункт «Конфигурация → Сохранить конфигурацию в файл» — получится файл .cf с конфигурацией без данных. Этот способ подходит для переноса доработок, но не для резервного копирования данных.

Сколько копий базы нужно хранить?

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

Что делать, если при загрузке .dt возникает ошибка?

Сначала проверьте исходную базу утилитой chdbfl.exe (для файловых баз) и процедурой «Тестирование и исправление», затем повторите выгрузку. Убедитесь, что версия платформы, на которой загружаете, не старше версии выгрузки, и что на диске достаточно места — загрузке требуется пространство под разворачивание всей базы.