Что делает
Обработка генерирует для администратора СУБД готовые скрипты и ставит восстановление теста на автомат:
- восстановить тест из свежего бэкапа по расписанию (задание SQL Server Agent) - главный сценарий;
- разовое восстановление тестовой базы из бэкапа рабочей;
- бэкап рабочей базы;
- то же для PostgreSQL: дамп, восстановление, расписание через cron или pgAgent.
Задание по расписанию берёт из каталога самый свежий бэкап, читает из него логические имена файлов и восстанавливает тестовую базу поверх старой. Настроил один раз - тест обновляется сам.
Почему это безопасно
Обработка не пишет в СУБД. Она печатает скрипт, а выполняет его администратор. Никаких недокументированных обращений к базе, только штатные команды СУБД (RESTORE, BACKUP, pg_restore) и задание планировщика (SQL Server Agent, cron). Расписание настраивается штатным конструктором расписания 1С.
Предохранители вшиты в сам скрипт
Автоматическое восстановление, направленное не туда, затирает рабочую базу. Поэтому в каждый генерируемый скрипт вшита защита, которая работает и без обработки:
- цель не может совпадать с источником - скрипт останавливается с понятной ошибкой;
- нельзя восстановить поверх системной базы (master, msdb и других);
- рабочая база только читается, восстановление идёт из бэкапа.
Проверено на живых базах
- MS SQL Server 2022: восстановление копии базы 17,8 ГБ из сжатого бэкапа 3,57 ГБ за ~140 секунд, 8511 таблиц как в оригинале. Задание SQL Server Agent, созданное сгенерированным скриптом, реально подняло базу из свежего бэкапа - шаг проверен выполнением, а не заглушкой.
- PostgreSQL 17.9: дамп базы на 72 таблицы, восстановление в тестовую - данные доехали полностью.
- Предохранитель "цель равна источнику" проверен срабатыванием.
Как начать
Открыть обработку в своей базе - сервер и имя базы подтянутся сами, пути и расписание уже заполнены заготовками. Выбрать нужный скрипт в списке, поправить пути под себя, скопировать готовый скрипт и передать администратору СУБД. Для расписания - настроить время кнопкой и один раз выполнить скрипт задания.
Работает на MS SQL Server и PostgreSQL, любая конфигурация 8.3, тонкий и веб-клиент.
Разбор с цифрами прогонов, устройством предохранителей и тем, почему тестовая база протухает у всех одинаково - в статье-спутнике: Ваша тестовая база на данных прошлого месяца, и вы к этому привыкли.
Другие наши инструменты для СУБД под 1С:
- Чек-ап СУБД - правильно ли стоит сервер, на который вы теперь льёте свежую копию каждую ночь.
- Карта объёмов базы 1С - из чего состоит база и почему бэкап весит столько, сколько весит.
- Проверка базы перед миграцией на PostgreSQL - если тест поднимаете уже на PostgreSQL, а прод пока на MS SQL.
- Аудит паролей СУБД - кто ещё может достать пароль СУБД из файлов кластера.
Проверено на следующих конфигурациях и релизах:
- Управление торговлей, редакция 11, релизы 11.5.22.67
Вступайте в нашу телеграмм-группу Инфостарт