Существует множество способов резервного копирования серверов и баз данных, но нигде не нашел описания автоматизации резервного копирования баз 1С в облако cloud.mail.ru
Почему cloud.mail.ru? Потому что в 2013 году были получены халявные 100Гб и грех ими не воспользоваться. Так же в данной статье я опишу несколько полезных команд windows, которые пригодятся и для других задач (например очистка файлов старше определенного срока, как убить сеансы 1С, что делать чтобы bat-файл дожидался выгрузки dt, не переходя на следующую команду, архивация dt с разбивкой на архивы не более 2Гб (mail.ru файлы большего размера не пропускает) )
Итак, для начала, например, на диске D: создаем папку backup. В ней папку SQL, в которую у нас будут складываться ежедневные backup'ы sql сервера. Настроить их можно следующим образом: https://infostart.ru/public/199760/
Затем нам нужно позаботиться чтобы на сервере был установлен архиватор, в моем примере WinRar
И настроить WebDAVCloudMailRu для подключения хранилища cloud.mail.ru в качестве сетевого диска, подробнее здесь: https://glashkoff.com/webdav-cloudmailru/
Теперь все готово для запуска нашего .bat файла, которые последовательно выполняет операции:
1) Удаляем бэкапы базы SQL средствами сервера старше 7 дней
Forfiles -p "D:\backup\SQL" -s -m *.* -d -7 -c "cmd /c del /q @path"
2) Удаляем временные файлы, остающиеся от службы WebDAV (иначе они переполнят диск C:)
del /F/S/Q C:\Windows\ServiceProfiles\LocalService\AppData\Local\Temp\*
3) Убиваем открытые сеансы 1С на сервере (можно перед запуском нашего bat-файла в планировщике поставить перезагрузку сервера, чтобы наверняка)
taskkill /IM 1cv8.exe /f
taskkill /IM 1cv8c.exe /f
taskkill /IM 1cv8s.exe /f
4) Выгружаем базы. В командной строке выгрузки .dt нужно указывать именно 1cv8.exe, иначе 1С вернет управление командному файлу и он пойдет дальше не дождавшись выгрузки.
командная строка выгрузки SQL базы
call "C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" CONFIG /M /S"Server1c\ut" /N"ИмяПользователя" /P"ПарольПользователя" /Out"D:\backup\1c_ut.log" /DumpIB"D:\backup\bak\ut.dt"
командная строка выгрузки файловой базы
call "C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" CONFIG /M /F"C:\1С\Бухгалтерия" /N"ИмяПользователя" /P"ПарольПользователя" /Out"D:\backup\1c_buh.log" /DumpIB"D:\backup\bak\buh.dt"
5) Архивируем выгруженные базы, с размером не более 2000000 кбайт (2Гб), иначе сервис их не пропустит
"C:\Program Files (x86)\WinRAR\rar.exe" a -o+ -dh -r -m5 -v2000000 D:\backup\bak\backup1Cut_0.rar D:\backup\bak\ut.dt
"C:\Program Files (x86)\WinRAR\rar.exe" a -o+ -dh -r -m5 -v2000000 D:\backup\bak\backup1Cbuh_0.rar D:\backup\bak\buh.dt
6) подключаем облако mail.ru как сетевой диск через службу WebDAVCloudMailRu
net use M: /DELETE
net use M: http://127.0.0.1:801 "ПарольОблакаMailRu" /USER:ЛогинОблакаMailRu
7) Копируем архивы в облако Mail.ru
xcopy "D:\backup\bak\backup1Cbuh_0.rar" M:\ /Y
xcopy "D:\backup\bak\backup1Cut_0.*" M:\ /Y
На этом все. Готовый .bat-ник можете скачать из вложения к статье.
https://github.com/yar229/WebDavMailRuCloud/releases/tag/1.13.6.1
RSS лента комментариев этой записи