Резервная копия информационной базы до установки нового релиза

· 10 мин

Содержание

Чтобы сохранить базу 1С перед обновлением, выгоните пользователей и сделайте две копии: выгрузку в Конфигураторе через Администрирование → Выгрузить информационную базу (файл .dt) и «физическую» копию — файл 1Cv8.1CD для файловой базы или бэкап СУБД для серверной. Затем убедитесь, что копия открывается. Только после этого запускайте обновление.

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

Подготовка базы к сохранению: что проверить заранее

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

  1. Узнайте тип базы. В окне запуска 1С выделите базу: внизу виден путь. File="D:\Base\Buh" — файловая база, Srvr="srv1c";Ref="buh" — клиент-серверная. От этого зависит способ копирования.
  2. Запишите текущие версии. В программе откройте Справка → О программе (или значок «i» в правом верхнем углу): там номер платформы и релиз конфигурации. Пригодится при откате и при обращении к обслуживающей организации.
  3. Проверьте место на диске. Выгрузка .dt весит меньше базы (данные сжимаются), но файловая копия и бэкап СУБД занимают примерно столько же, сколько сама база. Для базы на 20 ГБ держите свободными хотя бы 40–50 ГБ: копия плюс запас для самого обновления.
  4. Предупредите пользователей и назначьте время. Лучше вечер или утро до начала рабочего дня.
  5. Завершите сеансы. Для файловой базы попросите всех выйти и проверьте, что никто не остался: откройте Конфигуратор, Администрирование → Активные пользователи. В списке должен быть только ваш сеанс Конфигуратора.
  6. Остановите обмены и регламентные задания — выгрузку в банк, синхронизацию с УТ или сайтом. Иначе они будут писать в базу во время копирования.

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

Для типовых конфигураций на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) удобно блокировать вход штатно: в разделе Администрирование → Обслуживание есть блокировка работы пользователей. Она запрещает новые входы, выводит сообщение и через заданное время завершает открытые сеансы. Чтобы потом зайти самому, укажите код разрешения — его вводят в параметре запуска /UC.

Перед копированием
Выполнено: 0 / 6

Как сохранить файловую базу 1С перед обновлением

У файловой базы два независимых способа. Надёжнее сделать оба: они страхуют друг друга.

Способ 1. Копия файла 1Cv8.1CD

Все данные файловой базы лежат в одном файле 1Cv8.1CD в каталоге базы. Это самая быстрая копия: обычное копирование файла.

  1. Убедитесь, что в базе нет ни одного сеанса — ни Предприятия, ни Конфигуратора.
  2. Откройте каталог базы (путь из окна запуска).
  3. Скопируйте 1Cv8.1CD в отдельную папку, например D:\Backup\Buh_2026-10-07_до_обновления\.
  4. Если нужен журнал регистрации, скопируйте и папку 1Cv8Log — в .dt он не попадает.

Копировать можно и весь каталог целиком, это проще. Если при копировании Windows пишет, что файл занят другим процессом, значит, в базе кто-то остался: вернитесь к списку активных пользователей.

Сохраняйте копию на другой диск или в сетевую папку. Копия рядом с базой не спасёт при отказе диска — а сбой при обновлении иногда совпадает именно с ним.

Способ 2. Выгрузка информационной базы в .dt

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

  1. Запустите базу в режиме Конфигуратор.
  2. Меню Администрирование → Выгрузить информационную базу....
  3. Укажите имя файла, например Buh_2026-10-07.dt, и папку на другом диске.
  4. Дождитесь сообщения о завершении выгрузки. Для базы в несколько гигабайт это от нескольких минут до часа.

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

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /F"D:\Base\Buh" /N"Администратор" /P"пароль" /DumpIB "D:\Backup\Buh_2026-10-07.dt" /Out "D:\Backup\dump.log"

Номер платформы в пути замените на свой. Для серверной базы вместо /F укажите /S"srv1c\buh". Результат и ошибки запишутся в файл из параметра /Out.

Отдельно: сохранить конфигурацию в .cf

Если конфигурация доработана программистом, сохраните и её: Конфигурация → Сохранить конфигурацию в файл.... Файл .cf не содержит данных, зато позволяет потом сравнить доработки со старой версией. Для типовой базы без изменений этот шаг не обязателен — конфигурация уже есть внутри .dt.

Встроенное резервное копирование в программе

В типовых конфигурациях есть свой помощник: Администрирование → Обслуживание → Резервное копирование и восстановление. Он работает для файловых баз: сам завершает сеансы, копирует базу в zip-архив и снова запускает программу. Там же настраивается копирование по расписанию.

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

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

Серверная база: бэкап в MS SQL и PostgreSQL

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

Microsoft SQL Server

В SQL Server Management Studio: правой кнопкой по базе → Задачи → Создать резервную копию (Tasks → Back Up). Тип — полная. Или запросом:

BACKUP DATABASE [buh]
TO DISK = N'D:\Backup\buh_2026-10-07.bak'
WITH COPY_ONLY, CHECKSUM, INIT, STATS = 10;

Пояснения к параметрам:

  • 🔹 COPY_ONLY — внеплановая копия не ломает цепочку регулярных бэкапов, если у вас настроены дифференциальные копии.
  • 🔹 CHECKSUM — сервер проверяет контрольные суммы страниц при записи.
  • 🔹 INIT — перезаписать файл, если он уже есть с таким именем.
  • 🔹 COMPRESSION можно добавить для сжатия, но в редакции Express оно не поддерживается.

PostgreSQL

Для PostgreSQL используйте pg_dump той же версии, что и сервер (сборки PostgreSQL для 1С поставляются со своими утилитами):

pg_dump -U postgres -h localhost -Fc -f "D:\Backup\buh_2026-10-07.backup" buh

Ключ -Fc создаёт сжатый архив в собственном формате — его потом восстанавливают через pg_restore. Пароль утилита спросит при запуске или возьмёт из файла паролей PostgreSQL.

СпособЧто сохраняетСкоростьКогда выбирать
Копия 1Cv8.1CDВсю файловую базуСамая быстраяФайловая база, быстрый откат
Выгрузка .dtКонфигурацию и данные, без журнала регистрацииМедленная на больших базахЛюбая база; перенос между файловой и серверной
Бэкап MS SQL .bakВсю базу на уровне СУБДБыстраяСерверная база на SQL Server
pg_dumpВсю базу на уровне СУБДБыстраяСерверная база на PostgreSQL
Встроенный помощникАрхив файловой базыСредняяФайловая база, без доступа к Конфигуратору

Блокировка сеансов через консоль кластера серверов 1С

Для серверной базы выгонять пользователей вручную неудобно — проще воспользоваться консолью администрирования серверов 1С.

  1. Откройте консоль, разверните Центральный сервер → Кластеры → ваш кластер → Информационные базы.
  2. Откройте свойства нужной базы.
  3. Включите «Блокировка начала сеансов включена», задайте время начала и сообщение для пользователей.
  4. Укажите код разрешения — с ним вы сами сможете войти, добавив /UC<код> в параметры запуска.
  5. Включите «Блокировка регламентных заданий включена», чтобы фоновые задания не писали в базу во время бэкапа.
  6. В ветке Сеансы этой базы проверьте, кто остался, и при необходимости завершите сеансы вручную.

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

Если консоль не открывается, список баз и сеансов можно посмотреть утилитой rac из каталога платформы: rac cluster list, затем rac session list с параметром кластера. Полный список ключей — в rac help.

Проверка: открывается ли сохранённая копия

Непроверенная копия — это надежда, а не страховка. Файл .dt может оказаться обрезанным, если кончилось место, а бэкап СУБД — записанным с ошибкой. На проверку уходит 10–20 минут, и делать её стоит до обновления.

Проверка .dt:

  1. В окне запуска 1С нажмите Добавить → создание новой базы → вариант без конфигурации (для разработки или загрузки выгруженной базы).
  2. Укажите отдельный каталог, например D:\Test\Buh_check.
  3. Откройте новую базу в Конфигураторе: Администрирование → Загрузить информационную базу... и выберите ваш .dt.
  4. Запустите базу в режиме Предприятия и сформируйте оборотно-сальдовую ведомость за последний месяц. Сравните итоги с рабочей базой.

Проверка бэкапа SQL Server без восстановления:

RESTORE VERIFYONLY
FROM DISK = N'D:\Backup\buh_2026-10-07.bak'
WITH CHECKSUM;

Эта команда проверяет, что файл читается и цел, но не открывает базу. Полная проверка — восстановить бэкап в базу с другим именем на тестовом сервере.

Проверка дампа PostgreSQL: команда pg_restore -l "D:\Backup\buh_2026-10-07.backup" выводит оглавление архива. Если она отработала без ошибок и список таблиц не пустой, архив читается.

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

Если обновление пошло не так: откат из копии

Восстанавливайте базу, если обновление прервалось с ошибкой, база не запускается или после обновления явно испорчены данные.

  • 📁 Файловая база, копия 1Cv8.1CD. Закройте все сеансы, переименуйте текущий файл (например, в 1Cv8_bad.1CD) и положите на его место копию. Это самый быстрый откат.
  • 📦 Любая база, файл .dt. Конфигуратор → Администрирование → Загрузить информационную базу.... Загрузка полностью заменяет текущее содержимое базы.
  • 🗄 MS SQL. Восстановите .bak поверх рабочей базы (RESTORE DATABASE ... WITH REPLACE) при заблокированных сеансах 1С. Имя базы в СУБД остаётся прежним, поэтому в кластере 1С ничего менять не нужно.
  • 🐘 PostgreSQL. Создайте пустую базу или очистите текущую и восстановите архив через pg_restore -d имя_базы.

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

После отката запустите базу и проверьте номер релиза в Справка → О программе — он должен совпасть с записанным при подготовке.

Ошибки при сохранении базы перед обновлением

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

Ещё две ошибки, которые не выдают сообщений, но портят откат:

  • ❌ Одна копия на том же диске. Сбой диска — и нет ни базы, ни копии.
  • ❌ Копия без даты в имени. Через месяц в папке лежат base.dt, base1.dt, base_new.dt, и непонятно, какая из них снята до обновления. Пишите в имя дату и пометку «до обновления» с номером релиза.

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

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