Клонирование одной информационной базы в другую на сервере 1С/SQL для управляемых форм
Иногда нужно быстро скопировать рабочую базу данных в другую (существующую) на сервере 1С / SQL — для отладки, тестирования или других извращений. При этом в рабочей базе нельзя выгонять пользователей, и нужно сделать это прозрачно для всех.
Эта обработка вам поможет.
- Описание
- Подробнее
Описание
Иногда нужно быстро скопировать рабочую базу данных в другую (существующую) на сервере 1С / SQL — для отладки, тестирования или других извращений. При этом в рабочей базе нельзя выгонять пользователей, и нужно сделать это прозрачно для всех.
Обработка предназначена для клонирования базы MS SQL из 1С:Предприятия. Т.е. средствами MS SQL производится создание резервной копии базы — источника, а затем восстановление ее из резервной копии в базу — приемник. Она может применяться в тех случаях, когда нужно срочно получить копию базы, в которой работают пользователи. Обработку можно запускать в любой конфигурации (даже в пустой) на платформе 1С:Предприятие 8.3.
Обработка под управляемые формы.
Тестировалось на платформе 8.3.20.1789 (запускал под Бухгалтерия предприятия КОРП, редакция 3.0 (3.0.111.16), но и на других будет работать. К специфичным функциям определенных конфигураций не привязано, можно запускать из пустой базы.)
Порядок работы:
В консоли Сервера 1с включить блокировку начала сеансов и удалить соединения у базы Приемника. (Иначе будет ошибка при восстановлении)
Заполнить настройки Кластера 1с или настройки подключения напрямую к MS SQL на вкладке Настроки.
На закладке "Основная" выбрать базу — источник. Т.е. ту базу, откуда мы хотим сделать копию. Список баз заполнится автоматически.
На закладке "Основная" выбрать базу — приемник. Т.е. ту базу, куда мы хотим сделать копию.
Нажать кнопку "Клонировать".
В консоли Сервера 1с вЫключить блокировку начала сеансов для базу приемника.
Преимущества:
1. Позволяет сделать копию базы, с которой в данный момент работают пользователи, а также текущую информационную базу в режиме "1С. Предприятие".
2. Позволяет сделать копию базы быстрее, чем через выгрузку/загрузку файла dt.
Ограничения:
Требуется MS SQL 2005 или выше.
Обработку можно запускать в любой базе (даже в текущей), кроме базы — приемника.
За основу взята обработка //sale.itcity.ru/public/149694/?detail=Y&ID=149694
Только та под обычные формы, я переделал на управляемые.
Код открыт, переделывайте под себя как хотите.
В планах хотел еще менять заголовок конфигурации и добавлять префикс (Например ТЕСТ —). Но у разных конфигураций Константа.ЗаголовокСистемы хранится в разных таблицах, а как из SQL вытянуть Метаданные.Имя пока не выяснил. Подключаться после клонирования через ADO и менять заголовок тоже не очень, т.к. логин и пароль может быть для разных баз разный и это не универсальное решение.
За подсказки буду благодарен.
