Копия серверной базы 1С: выгрузка, перенос и восстановление

· 9 мин

Содержание

Скопировать базу 1С с сервера можно тремя путями: выгрузить в файл .dt через Конфигуратор, снять копию средствами СУБД (MS SQL или PostgreSQL) либо скопировать каталог, если база файловая. Какой путь выбрать, зависит от того, куда вы переносите базу и сколько у вас времени.

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

С чего начать: что за база и куда её везти

Сначала выясните тип базы. Откройте список баз в окне запуска и посмотрите на строку «Расположение». Если там File="...", база файловая. Если Srvr="сервер";Ref="имя", база клиент-серверная, данные лежат в СУБД.

Дальше три вопроса:

  • 📍 Куда копия? Тест, разработка, другой сервер, архив.
  • 🔌 Есть ли доступ к СУБД? У администратора 1С его часто нет, а у администратора СУБД — есть.
  • 🧑‍💼 Можно ли остановить работу? Для согласованной копии пользователи должны выйти.
СпособПодходит, когдаЧто нужноМинус
Выгрузка в .dtТест, перенос между версиями, файловая и серверная базыПрава администратора в базе, КонфигураторДолго на больших базах
Копия средствами СУБДПолный клон на таком же сервереДоступ к MS SQL или PostgreSQLПривязка к типу СУБД
Копирование каталогаТолько файловая базаДоступ к папкеСерверная так не копируется
Командная строка 1cv8Автоматизация по расписаниюТот же доступ, что и в КонфигуратореНужен скрипт и логи

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

Подготовка: сеансы, права, место на диске

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

  1. Предупредите пользователей, назначьте время.
  2. Откройте консоль администрирования серверов 1С, найдите свою базу в разделе «Информационные базы» и посмотрите «Сеансы». Если там остались зависшие, завершите их — предупредив владельцев.
  3. В свойствах базы включите блокировку начала сеансов и задайте сообщение, чтобы никто не вошёл посреди выгрузки.
  4. Проверьте свободное место. Файл .dt сжат и меньше самой базы, но запас оставьте: для большой базы это десятки гигабайт.

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

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

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

Это самый универсальный способ. Файл .dt содержит конфигурацию, данные, пользователей и настройки. Загрузить его можно и в файловую базу , и в серверную.

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

  1. Запустите 1С, выберите базу, нажмите «Конфигуратор» и войдите под администратором.
  2. Откройте меню «Администрирование» и выберите «Выгрузить информационную базу».
  3. Укажите путь и имя файла, например D:\backup\buh_2026-10-07.dt.
  4. Дождитесь окончания. Окно с прогрессом закрывать нельзя.

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

Загрузка на другой стороне

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

На что смотреть:

  • 🔢 Версия платформы. Файл, выгруженный на новой платформе, на более старой номер версии не загрузится. Поставьте на принимающей стороне платформу не ниже той, на которой делали выгрузку.
  • 🔒 Монопольный доступ. При загрузке в базу никто больше не должен работать.
  • 🧱 Пустая база. Загружать лучше в только что созданную базу без конфигурации.

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

Выгрузка из командной строки: для регулярных копий

Когда копию нужно снимать каждую ночь, выгрузку запускают скриптом. Конфигуратор умеет работать в пакетном режиме:

"C:\Program Files\1cv8\8.3.25.1445\bin\1cv8.exe" DESIGNER ^
  /S "srv-1c\buh" ^
  /N "Администратор" /P "пароль" ^
  /DisableStartupMessages ^
  /DumpIB "D:\backup\buh.dt" ^
  /Out "D:\backup\buh_log.txt"

Здесь /S задаёт сервер и имя базы через обратную косую черту, /DumpIB — выгрузку, /Out — файл журнала. Номер каталога платформы (8.3.25.1445) замените на свой.

Загрузка работает симметрично, через /RestoreIB:

"C:\Program Files\1cv8\8.3.25.1445\bin\1cv8.exe" DESIGNER ^
  /S "test-1c\buh_test" ^
  /N "Администратор" /P "пароль" ^
  /RestoreIB "D:\backup\buh.dt" ^
  /Out "D:\backup\restore_log.txt"

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

Что полезно добавить в скрипт:

  • 📝 проверку файла журнала на слова об ошибке: если выгрузка упала, вы узнаете об этом утром, а не при аварии;
  • 🗑️ ротацию: хранить, например, последние семь копий и удалять старые;
  • 📡 копирование результата на другой диск или сервер, потому что копия на том же диске при поломке пропадёт вместе с базой.

Копия через СУБД: полный клон на уровне сервера

Если нужен точный клон, а база большая, выгрузка в .dt займёт часы. Тогда копируют базу средствами СУБД: делают резервную копию и разворачивают её под новым именем.

MS SQL Server

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

BACKUP DATABASE [buh]
TO DISK = N'D:\sql_backup\buh_copy.bak'
WITH COPY_ONLY, COMPRESSION, INIT;

Восстановление под новым именем с переносом файлов:

RESTORE DATABASE [buh_test]
FROM DISK = N'D:\sql_backup\buh_copy.bak'
WITH MOVE N'buh' TO N'D:\sql_data\buh_test.mdf',
     MOVE N'buh_log' TO N'D:\sql_data\buh_test_log.ldf',
     RECOVER;

Логические имена файлов (buh, buh_log в примере) у вас могут быть другими. Посмотреть их можно командой RESTORE FILELISTONLY для вашего .bak.

PostgreSQL

Для баз 1С используется сборка PostgreSQL, рекомендованная фирмой 1С, и копию лучше делать утилитами из неё же. Формат с внутренним сжатием удобен и для копии, и для восстановления:

pg_dump -h localhost -U postgres -Fc -f /backup/buh.dump buh
createdb -h localhost -U postgres buh_test
pg_restore -h localhost -U postgres -d buh_test /backup/buh.dump

Если пользователь и права в целевом кластере отличаются, добавьте к pg_restore параметр --no-owner, чтобы владельцем объектов стал тот, кто восстанавливает.

Регистрация копии в кластере

Разворачивание в СУБД — только половина дела. Платформа должна узнать о базе:

  1. В консоли администрирования серверов выберите кластер, вызовите «Создать» → «Информационная база».
  2. Укажите имя, тип и адрес сервера СУБД, имя восстановленной базы, пользователя СУБД и пароль.
  3. Не включайте пункт, который создаёт базу в СУБД, если она уже восстановлена: нужно подключиться к готовой.
  4. Включите блокировку регламентных заданий до первого запуска.

Затем добавьте базу в список запуска на клиенте. При первом входе платформа часто спрашивает, перемещена база или скопирована. Выбирайте «Я скопировал»: так копия не поймёт, что она «та самая», и не станет работать с теми же внешними обменами и лицензиями.

Файловая база: копирование каталога

Если база файловая, всё проще, но без дисциплины тут теряют больше всего данных. Файловая база — это каталог, в нём главный файл 1Cv8.1CD.

Порядок:

  1. Закройте базу у всех. Проверьте, что в каталоге нет файла блокировки 1Cv8.cdn и что в диспетчере задач на сервере нет висящих процессов 1cv8.
  2. Скопируйте каталог целиком, а не один 1Cv8.1CD. Рядом лежат вспомогательные файлы, и копия без них может не открыться.
  3. Добавьте копию в список баз как новую.

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

Копия для ноутбука или удалённой работы

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

Порядок такой:

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

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

Ещё один вариант для тех, кто работает с конфигурацией, а не с данными: сохранить конфигурацию в .cf. Файл маленький, переносится мгновенно, и развернуть его можно в пустой базе или в базе-образце для проверки доработок.

Что проверить в копии до начала работы

Копия открылась, но это ещё не значит, что она готова. Пройдитесь по списку:

  • 📅 сверьте дату последнего документа и количество записей в двух-трёх крупных справочниках;
  • 🛑 отключите регламентные задания, обмены с другими базами, рассылки и интеграции с банком;
  • 🔑 проверьте, что пользователи входят под своими паролями;
  • 🧾 откройте оборотно-сальдовую ведомость за любой закрытый месяц и сравните итоги с боевой базой;
  • 🏷️ переименуйте базу в списке так, чтобы тестовую нельзя было спутать с рабочей. Добавьте в имя слово «ТЕСТ».
Перед запуском копии
Выполнено: 0 / 5

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

Эти сбои повторяются у разных администраторов. Каждая указывает на конкретную причину.

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

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

Можно ли делать выгрузку, пока в базе работают люди?
Технически платформа может начать выгрузку, но копия может оказаться несогласованной: часть документов будет проведена наполовину. Для надёжной копии выведите пользователей и включите блокировку входа. Для регулярных резервных копий большой базы лучше пользоваться средствами СУБД.
Чем копия через СУБД лучше выгрузки в dt?
Она быстрее для больших баз и сохраняет точное состояние хранилища. Минус: копия привязана к типу СУБД, а .dt можно развернуть и в файловой базе, и на другой СУБД.
Можно ли загрузить dt, выгруженный из серверной базы, в файловую?
Да. Формат .dt не привязан к способу хранения. Создайте пустую файловую базу и загрузите файл через Конфигуратор. Учитывайте размер: файловая база с несколькими десятками гигабайт данных работает медленно.
Сохранятся ли пользователи и пароли?
Да, список пользователей, их роли и пароли (в виде хеша) входят в выгрузку. Если нужна тестовая копия без реальных учётных записей, смените пароли после загрузки.
Хватит ли копии конфигурации, если нужны только изменения разработчика?
Если вам нужна только конфигурация без данных, сохраните её в файл .cf через пункт «Конфигурация» → «Сохранить конфигурацию в файл». Данные при этом не копируются.