Приложение для "перезаливки" баз данных 1С:Предприятия.
Реализовано на OneScript (http://oscript.io). Для работы необходим OneScript версии 1.0.20 или выше.
Под словом "перезалить" понимается процедура восстановления одной базы данных из резервных копий другой базы данных. Например, если необходимо загрузить данные из базы продуктива в тестовую или разработочную.
Перезаливатор позволяет максимально автоматизировать процесс "перезаливки" баз данных 1С:Предприятия.
Имеется GUI-интерфейс для выбора базы-приемника и базы-назначения, а также окно с выводом результата.
- Скачать файл "Distr\Perezalivator-<версия>.ospx"
- Запустить установку с помощью пакетного менеджера opm
Установка:
opm install -f <Путь к файлу Perezalivator-<версия>.ospx>
Можно также воспользоваться командным файлом "install.bat" из директории "Distr"
Зависит от:
- Библиотеки json: https://github.com/oscript-library/json
- Библиотеки gui: https://github.com/oscript-library/oscript-simple-gui
- Библиотеки TMSSQL: https://github.com/Tavalik/TMSSQL
- Библиотеки TRun1C: https://github.com/Tavalik/TRun1C
- Библиотеки TMail: https://github.com/Tavalik/TMail
- Библиотеки TLog: https://github.com/Tavalik/TLog
(все зависимые библиотеки устанавливаются автоматически при условии использования пакетного менеджера opm)
Запуск приложения осуществляется запуском файла Perezalivator_Run.bat. При первом запуске в текущем каталоге будет создан пустой файл настроек Perezalivator_Params.json.
Необходимо заполнить все параметры, описав возможные базы-источники, базы-назначения и параметры для отправки электронных писем.
Проверить корректность введенных настроек можно запустив файл Perezalivator_Run_Test.bat. Перезаливатор будет запущен в режиме тестирования настроек.
При следующем запуске файла Perezalivator_Run.bat откроется окно, в котором необходимо выбрать базу-источник
и базу-назначения.
Если необходимо, можно указать дату, на которую необходимо получить данные (всегда используется конец дня).
После указания всех исходных параметров, перезаливатор начнет работу по следующему алгоритму:
- Установка блокировки регламентных заданий и начала сеансов в базе-приемнике
- Завершение активных сеансов (спустя несколько минут) в базе-приемнике
- Расчет последовательности файлов резервных копий для базы-источника для восстановления на указанную дату
- Восстановление базы-приемника по найденной последовательности файлов
- Перевод базы-приемника в простую модель восстановления
- Сжатие файлов журнала транзакций базы-приемника
- Отключение базы-приемника от хранилища
- Подключение базы-приемника к хранилищу
- Обновление конфигурации базы данных базы-приемника
- Снятие блокировки регламентных заданий и начала сеансов базы-приемника
- Уведомление о результате по электронной почте
Если в базе-приемнике присутствуют активные соединения, будет показана таблица со всеми соединениями, а также будет предоставлена возможность завершить все активные сеансы.
Отработав, Перезаливатор выдаст соответствующее сообщение (или сообщение об ошибке), а также отправит сообщение о результате работы на электронную почту.