Копия рабочей базы 1С с сервера: выгрузка .dt, бэкап SQL и файловый вариант
Содержание
Скопировать базу 1С с сервера проще всего через Конфигуратор: Администрирование → Выгрузить информационную базу сохраняет всю базу в один файл .dt, который потом загружается в новую пустую базу на любом компьютере. Для больших клиент-серверных баз быстрее сделать резервную копию средствами СУБД (MS SQL или PostgreSQL) и восстановить её под другим именем.
Чаще всего копия нужна для трёх задач: тестовая база перед обновлением, перенос на другой сервер или рабочая копия для разработчика. Под каждую задачу удобен свой способ, а команды из примеров можно запускать как есть, подставив свои имена серверов и баз.
Подготовка сервера и базы к копированию
Прежде чем что-то выгружать, соберите пять фактов. Без них копия либо не создастся, либо не откроется на новом месте.
- 🧩 Вариант базы. В окне запуска выделите базу и посмотрите строку под списком.
File="D:\Bases\Buh"— файловая база.Srvr="srv1c";Ref="buh"— клиент-серверная. - 🔢 Версия платформы. В запущенной базе:
Справка → О программе(значок «i» в правом верхнем углу). Номер вида 8.3.24.1548 понадобится для загрузки: платформа на новом месте должна быть с номером не ниже исходного. - 🔑 Права. Для выгрузки
.dtнужен пользователь 1С с полными правами (роль «Полные права» или «Администратор системы»). Для бэкапа СУБД — учётная запись SQL с правом резервного копирования. - 💾 Место на диске. Файл
.dtсжат и обычно в 3–10 раз меньше базы на SQL. Бэкап.bakбез сжатия близок к размеру файла данных. - 👥 Активные пользователи. Выгрузка
.dtне требует монопольного режима, но на большой базе идёт долго и нагружает сервер. Запускайте её вечером или в выходные.
Проверка целостности перед копированием
Если в базе есть битые ссылки или ошибки структуры, они уедут в копию. Для файловой базы есть два инструмента:
- В Конфигураторе:
Администрирование → Тестирование и исправление. Нужен монопольный доступ, все пользователи должны выйти. - Утилита
chdbfl.exeв папкеbinустановленной платформы. Работает с файлом1Cv8.1CDнапрямую, без запуска 1С.
Для клиент-серверной базы проверку на стороне СУБД делают командой DBCC CHECKDB (MS SQL). Запускайте её в нерабочее время: на базе в сотни гигабайт она идёт часами.
Сравнение способов: какой выбрать
| Способ | Когда подходит | Что нужно | Подводные камни |
|---|---|---|---|
Выгрузка .dt | Любая база до 50–100 ГБ, перенос между СУБД | Права администратора в 1С | Долго на больших базах |
Копирование файла 1Cv8.1CD | Файловая база на сетевой папке | Все пользователи вышли | Копия при открытой базе может быть битой |
| Бэкап MS SQL | Клиент-сервер на MS SQL, большие базы | Доступ к SQL Server | Новую базу нужно зарегистрировать в кластере |
| Дамп PostgreSQL | Клиент-сервер на PostgreSQL | Доступ к серверу СУБД | Версия pg_dump должна совпадать с сервером |
Командная строка 1cv8 / ibcmd | Регулярные копии по расписанию | Скрипт и планировщик | Пароль в открытом виде в скрипте |
Выгрузка базы 1С с сервера в файл .dt
Это универсальный способ. Он одинаково работает для файловой и серверной базы и не зависит от СУБД.
Шаг за шагом
- В окне запуска выберите нужную базу и нажмите Конфигуратор.
- Войдите под пользователем с полными правами.
- Откройте меню
Администрирование → Выгрузить информационную базу. - Укажите папку и имя файла, например
D:\Backup\buh_2026-10-07.dt. - Нажмите Сохранить и дождитесь сообщения о том, что выгрузка завершена.
Файл .dt содержит конфигурацию, данные и список пользователей. Журнал регистрации в него не попадает.
Загрузка .dt в новую базу
- На целевом сервере создайте пустую базу. В окне запуска: Добавить → Создание новой информационной базы → Создание информационной базы без конфигурации.
- Выберите вариант На сервере 1С:Предприятия, задайте имя базы в кластере и имя базы данных в СУБД.
- Поставьте флажок Создать базу данных в случае ее отсутствия и флажок Установить блокировку регламентных заданий.
- Откройте новую базу в Конфигураторе:
Администрирование → Загрузить информационную базу, выберите файл.dt.
Загрузка .dt полностью заменяет содержимое базы, в которую грузите. Никогда не загружайте файл в рабочую базу по ошибке — проверьте строку подключения в заголовке окна Конфигуратора перед нажатием «Открыть».
Блокировка регламентных заданий здесь — главный приём. Без неё копия сразу после загрузки начнёт выполнять обмены, отправлять отчётность и загружать банковские выписки так же, как рабочая база.
Как скопировать файловую базу 1С с сервера
Если база лежит в общей папке на сервере, её можно скопировать как обычные файлы. Это самый быстрый путь.
Что копировать
| Объект в папке базы | Что это | Копировать? |
|---|---|---|
1Cv8.1CD | Вся база: конфигурация и данные | Обязательно |
1Cv8Log | Журнал регистрации | По желанию |
1Cv8FTxt | Индекс полнотекстового поиска | Не нужно, перестроится |
1Cv8tmp.1CD | Временный файл | Не нужно |
Порядок
- Попросите всех выйти из базы. Проверить, что вышли все, можно в режиме Предприятия:
Администрирование → Обслуживание → Активные пользователи(в БП 3.0 и ЗУП 3.1). - Скопируйте
1Cv8.1CDв новую папку, напримерD:\Bases\Buh_test. - В окне запуска: Добавить → Добавление в список существующей информационной базы, укажите новую папку.
Если файл 1Cv8.1CD занят, Windows не даст его скопировать или скопирует несогласованную версию. Посмотреть, кто держит файл, можно в оснастке «Управление компьютером» на сервере: Общие папки → Открытые файлы.
Копирование клиент-серверной базы средствами SQL
В клиент-серверном варианте данные хранятся в СУБД, а кластер 1С только знает, где их искать. Поэтому копия делается в два хода: сначала копия базы данных в СУБД, потом регистрация новой информационной базы в кластере.
MS SQL Server
Резервная копия с флагом COPY_ONLY не ломает цепочку регулярных бэкапов, которые настроил администратор:
BACKUP DATABASE [buh]
TO DISK = N'D:\Backup\buh_copy.bak'
WITH COPY_ONLY, STATS = 10;
Параметр COMPRESSION ускоряет и уменьшает бэкап, но в редакции Express он недоступен.
Перед восстановлением узнайте логические имена файлов:
RESTORE FILELISTONLY FROM DISK = N'D:\Backup\buh_copy.bak';
Затем восстановите под новым именем, подставив логические имена из первого столбца результата:
RESTORE DATABASE [buh_test]
FROM DISK = N'D:\Backup\buh_copy.bak'
WITH MOVE 'buh' TO N'D:\SQLData\buh_test.mdf',
MOVE 'buh_log' TO N'D:\SQLData\buh_test_log.ldf',
STATS = 10;
Без MOVE SQL Server попытается записать файлы поверх файлов исходной базы и откажется.
PostgreSQL
Используйте pg_dump и pg_restore из той же сборки PostgreSQL, на которой работает сервер. Для 1С это обычно сборка с патчами для 1С.
pg_dump -U postgres -h localhost -Fc -f /backup/buh.dump buh
createdb -U postgres -h localhost -T template0 buh_test
pg_restore -U postgres -h localhost -d buh_test /backup/buh.dump
Формат -Fc сжимает дамп и позволяет восстанавливать его через pg_restore.
Регистрация копии в кластере 1С
- Откройте Администрирование серверов 1С Предприятия, раскройте кластер, на узле Информационные базы выберите Создать → Информационная база.
- Укажите имя базы в кластере (например,
buh_test), тип СУБД, сервер баз данных и имя восстановленной базы данных (buh_test). - Флажок Создать базу данных в случае ее отсутствия не ставьте: база данных уже есть.
- Поставьте Блокировка регламентных заданий включена.
- Добавьте базу в список на клиенте:
Srvr="srv1c";Ref="buh_test".
Если в поле имени базы данных случайно указать имя рабочей базы, две информационные базы в кластере будут смотреть в одни и те же таблицы. Любые «тесты» в копии изменят рабочие данные.
Командная строка: 1cv8 и ibcmd вместо ручной выгрузки
Отдельной утилиты v8util для копирования баз в составе платформы нет. Для автоматизации используют сам исполняемый файл 1cv8.exe в режиме Конфигуратора и, начиная с платформы 8.3.14, автономный сервер ibcmd.
Выгрузка .dt через 1cv8.exe
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER ^
/S "srv1c\buh" /N "Администратор" /P "пароль" ^
/DisableStartupDialogs ^
/DumpIB "D:\Backup\buh.dt" ^
/Out "D:\Backup\dump.log"
/S— сервер и имя базы в кластере. Для файловой базы вместо него/F "D:\Bases\Buh"./DumpIB— выгрузить базу в файл. Обратная операция —/RestoreIB./Out— лог. Если выгрузка не прошла, причина будет в нём.
Скрипт удобно поставить в планировщик Windows на ночь. Добавьте в имя файла дату, иначе каждая копия перезапишет предыдущую.
ibcmd
ibcmd работает напрямую с СУБД, без запущенного кластера и без лицензии клиента. Выгрузка в .dt выглядит так:
ibcmd infobase dump --dbms=MSSQLServer --db-server=sqlsrv ^
--db-name=buh --db-user=sa --db-pwd=пароль ^
--user=Администратор --password=пароль D:\Backup\buh.dt
Набор параметров зависит от СУБД и версии платформы. Перед первым запуском сверьтесь со справкой: ibcmd help infobase dump.
Не храните пароль в скрипте, к которому есть доступ у всех. Заведите для выгрузки отдельного пользователя 1С и ограничьте права на папку со скриптом.
Проверка копии после восстановления
Копию, которую никто не открывал, нельзя считать копией. Проверьте её сразу.
- Откройте копию в режиме Предприятия. Типовые конфигурации на БСП (БП 3.0, ЗУП 3.1, УТ 11) при первом запуске на новом месте спрашивают, перемещена база или это копия. Выберите вариант про копию: тогда программа отключит обмены и интеграции, привязанные к рабочей базе.
- Смените заголовок окна. В БП 3.0:
Администрирование → Общие настройки, поле заголовка программы. Напишите «ТЕСТ — копия от 07.10», чтобы никто не перепутал базы. - Сверьте цифры. Сформируйте оборотно-сальдовую ведомость за последний закрытый месяц в рабочей базе и в копии. Итоги должны совпасть до копейки.
- Проверьте пользователей. Список пользователей приходит вместе с базой. Если копия для разработчика, оставьте ему одну учётную запись.
- Проверьте версию.
Справка → О программе: релиз конфигурации должен совпадать с рабочим.
Что мешает скопировать базу: частые сбои
Эти ситуации не связаны с конкретным способом и всплывают на любом шаге.
- 🔒 Конфигуратор не открывается, пишет про блокировку начала сеансов. На базе включена блокировка, например после обновления. Снимите её в консоли кластера в свойствах информационной базы или в режиме Предприятия через
Администрирование → Обслуживание, если доступ к нему есть. - 🧱 Выгрузка .dt обрывается с ошибкой на середине. Чаще всего не хватает места на диске, куда пишется файл, или во временной папке пользователя. Освободите место и повторите. Если ошибка указывает на конкретную таблицу — это повод запустить проверку целостности.
- 🌐 Нет доступа к общей папке файловой базы. Учётной записи Windows не хватает прав на чтение. Копировать файл нужно от имени пользователя, у которого есть права на папку, или попросить администратора сервера.
- 🕒 Копия на SQL открывается, но показывает старые данные. Восстановлен не тот бэкап. Проверьте дату создания файла
.bakи команду: при нескольких копиях в одном файле SQL Server по умолчанию берёт первую. - 🧾 В копии не видно журнала регистрации. Он не переносится через
.dtи бэкап СУБД. Если журнал нужен, скопируйте папку1Cv8Logиз каталога базы на сервере 1С вручную.