Администрирование · 10 мин
Как сделать копию базы 1С:Бухгалтерии
Как сделать копию базы 1С:Бухгалтерии через выгрузку DT, копирование каталога и средства СУБД. Проверка результата, типичные ошибки и восстановление из копии.
Копия базы 1С:Бухгалтерии нужна в трёх типовых ситуациях: перед обновлением конфигурации, перед массовой загрузкой или исправлением данных и при переносе учёта на другой компьютер или сервер. Способ создания копии зависит от того, как развёрнута база — в файловом варианте на локальном диске или в клиент-серверном на SQL Server, PostgreSQL либо другой СУБД.
Главное правило: копия должна быть полной и консистентной. Неполная копия, снятая «на живую» в момент работы пользователей, может открыться с ошибками или содержать расхождения в данных. Поэтому перед снятием копии нужно либо выгнать пользователей, либо использовать штатный механизм выгрузки, который сам обеспечивает целостность.
Ниже разобраны три рабочих способа: выгрузка в файл DT через конфигуратор, копирование каталога файловой базы и резервное копирование на стороне СУБД. Отдельно рассмотрены автоматизация регламентных копий, проверка результата и восстановление базы из копии.
Как определить, какой у вас вариант базы
Перед выбором способа нужно понять, где физически хранятся данные. Откройте список информационных баз в окне запуска 1С, выделите нужную базу и нажмите «Изменить». Если в строке указан путь вида D:\Bases\Buh — это файловый вариант. Если указаны сервер и имя базы на кластере — клиент-серверный.
Файловая база — это каталог, в котором лежит главный файл 1Cv8.1CD и служебные файлы. Клиент-серверная база хранится в СУБД, и простым копированием файлов её не снять: данные распределены по таблицам SQL Server или PostgreSQL.
Подойдёт выгрузка DT или копирование каталога
Нужна выгрузка DT или backup средствами СУБД
Копия запрашивается через личный кабинет сервиса
Способ 1: выгрузка базы в файл DT через конфигуратор
Это универсальный метод, который работает и для файловых, и для клиент-серверных баз. Файл с расширением .dt содержит полный слепок базы: данные, конфигурацию, пользователей и настройки. Именно такую выгрузку требует платформа перед обновлением конфигурации.
Порядок действий: откройте конфигуратор, войдите под пользователем с полными правами, в меню выберите «Администрирование → Выгрузить информационную базу», укажите путь и имя файла, дождитесь окончания выгрузки. На время выгрузки все пользователи должны выйти из базы — платформа сама потребует завершить сеансы.
Учитывайте ограничение: формат DT не предназначен для очень больших баз. При размере в десятки гигабайтов выгрузка может занять часы или завершиться ошибкой из-за нехватки памяти. Для больших клиент-серверных баз правильнее использовать резервное копирование на стороне СУБД.
- 1Завершите работу всех пользователей в базе
- 2Откройте конфигуратор под администратором
- 3Меню «Администрирование → Выгрузить информационную базу»
- 4Укажите папку и понятное имя файла, например buh_kopia_15-03.dt
- 5Дождитесь сообщения об успешном завершении
- 6Проверьте, что файл появился и его размер не нулевой
Способ 2: копирование каталога файловой базы
Если база файловая, самый быстрый способ — скопировать весь её каталог средствами Windows. Обязательное условие: в момент копирования в базе никто не работает и файл не открыт конфигуратором. Иначе есть риск получить повреждённую копию, которая не откроется или будет содержать ошибки.
Закройте все сеансы 1С, найдите каталог базы (путь виден в списке баз), скопируйте его целиком в другое место — на другой диск, сетевую папку или внешний носитель. Копировать нужно именно каталог целиком, а не только файл 1Cv8.1CD: рядом могут лежать вложенные папки с данными полнотекстового поиска и другими служебными структурами.
Чтобы подключить такую копию, в окне запуска 1С нажмите «Добавить», выберите «Добавление в список существующей информационной базы» и укажите путь к скопированному каталогу. Дайте базе понятное имя, например «Бухгалтерия (копия)», чтобы не перепутать её с рабочей.
Способ 3: резервное копирование клиент-серверной базы
В клиент-серверном варианте штатный путь — резервная копия средствами СУБД. Для Microsoft SQL Server это команда BACKUP DATABASE или план обслуживания в Management Studio, для PostgreSQL — утилита pg_dump или pg_basebackup. Такая копия снимается без остановки работы пользователей и подходит для баз любого размера.
Важно понимать разницу: копия СУБД содержит только данные базы, а конфигурация и список пользователей хранятся в ней же внутри, но привязка базы к кластеру 1С делается отдельно. При восстановлении на другой сервер нужно будет заново создать информационную базу в консоли кластера и указать восстановленную базу данных.
BACKUP DATABASE [BuhBase] TO DISK = N'D:\Backups\BuhBase_full.bak' WITH COMPRESSION, CHECKSUMЕсли опыта администрирования СУБД нет, безопаснее использовать выгрузку DT из первого способа — она дольше, но не требует доступа к серверу баз данных и не рискует затронуть другие базы на том же экземпляре СУБД.
Автоматизация: регулярные копии по расписанию
Разовая копия перед рискованной операцией — это минимум. Для защиты данных копии должны создаваться регулярно без участия человека. В файловом варианте это делается скриптом, который копирует каталог базы по расписанию через планировщик заданий Windows, в клиент-серверном — планом обслуживания СУБД.
При настройке автоматических копий соблюдайте два правила. Первое: храните копии не на том же диске, где лежит сама база, — при отказе диска вы потеряете и базу, и копии. Второе: храните несколько поколений копий (например, ежедневные за неделю и еженедельные за месяц), чтобы можно было откатиться не только к вчерашнему состоянию.
Как проверить, что копия рабочая
Копия, которую никто не проверял, не считается копией. Минимальная проверка для файла DT — выполнить тестовую загрузку в пустую базу: в конфигураторе «Администрирование → Загрузить информационную базу» и убедиться, что загрузка завершилась без ошибок, а база открывается в режиме предприятия.
Для копии каталога или backup СУБД — подключите копию под отдельным именем, войдите в неё и откройте несколько ключевых отчётов: оборотно-сальтовую ведомость, карточку счёта, список документов за последний месяц. Сверьте итоги ОСВ с рабочей базой — они должны совпадать до копейки на момент снятия копии.
Как проверить результат
База открывается без ошибок и запроса восстановления
Ошибка формата потока или требование тестирования и исправления
Итоги совпадают с рабочей базой
Расхождения в оборотах или сальдо
Документы за последний день присутствуют
Документы отсутствуют или не проводятся
Типичные ошибки и ограничения
Самая частая ошибка — копирование файловой базы при открытых сеансах. Вторая по частоте — путаница между рабочей базой и копией: бухгалтер вносит документы в копию, и данные расходятся. Чтобы этого избежать, переименовывайте копию в списке баз и при возможности убирайте её из списков обычных пользователей.
Отдельная ловушка — хранение единственной копии на том же компьютере. При поломке диска, шифровальщике или случайном удалении теряется всё сразу. Копия должна физически находиться на другом устройстве или в другом помещении.
Как выбрать способ
Восстановление базы из копии
Восстановление из файла DT: создайте пустую базу или откройте конфигуратор той базы, которую нужно откатить, выполните «Администрирование → Загрузить информационную базу» и укажите файл. Загрузка полностью заменяет текущее содержимое базы — всё, что было внесено после снятия копии, будет потеряно.
Восстановление файловой базы из копии каталога ещё проще: замените содержимое рабочего каталога содержимым копии при закрытых сеансах. Для клиент-серверной базы восстановление делается средствами СУБД (RESTORE DATABASE в SQL Server, pg_restore в PostgreSQL) с последующей проверкой привязки в консоли кластера 1С.
Что важно запомнить
Перед любой рискованной операцией делайте выгрузку DT. Файловую базу можно копировать каталогом только при закрытых сеансах. Клиент-серверную — средствами СУБД. Храните копии на другом носителе и регулярно проверяйте их тестовым восстановлением.
Частые вопросы
Можно ли сделать копию базы, пока в ней работают пользователи?
Выгрузка DT потребует завершения всех сеансов. Копирование каталога файловой базы при работающих пользователях делать нельзя — копия может быть повреждена. Резервное копирование средствами СУБД в клиент-серверном варианте выполняется без остановки работы.
Чем файл DT отличается от копии каталога базы?
DT — это выгрузка в специальном формате платформы, которую можно загрузить в любую пустую базу, в том числе на другом компьютере и в другом варианте работы. Копия каталога — это побайтовый дубликат файловой базы, который подключается как есть, но не подходит для переноса в клиент-серверный вариант.
Сколько места нужно для копии базы?
Ориентируйтесь на размер самой базы: файл DT обычно получается компактнее исходной базы за счёт сжатия, копия каталога занимает столько же, сколько оригинал. Перед началом убедитесь, что на целевом диске свободно минимум полтора объёма базы.
Как сделать копию только данных без конфигурации?
Штатного способа выгрузить только данные без конфигурации в файле DT нет — выгрузка всегда полная. Для переноса отдельных данных используют обработки выгрузки-загрузки через XML или типовые механизмы обмена, но это уже не резервная копия, а перенос данных.
Как часто нужно делать копии бухгалтерской базы?
Минимум — ежедневно в автоматическом режиме и дополнительно вручную перед обновлениями и массовыми операциями. В период сдачи отчётности, когда интенсивность ввода данных высокая, имеет смысл делать копии чаще, например несколько раз в день.
Копия не открывается, платформа требует тестирование и исправление. Что делать?
Это признак того, что копия снималась при открытых сеансах или файл был повреждён при копировании. Снимите копию заново по правилам. Если повреждена сама рабочая база, запустите утилиту chdbfl.exe из каталога платформы для файловой базы, предварительно сохранив её текущее состояние.