Расскажу как я реализовал ежедневный бэкап базы 1C 7.7 на SQL 2005, так же у меня делается бэкап файлов 1С. С 1C я начал работать совсем недавно, не буду в этой статье рассказывать какое УГ этот ваш 1С, мне не приходилось выбирать. После успешного поднятия сервера SQL 2005 и установки 1С, все работало как надо, но ведущий программист чуть ли не каждый день напоминал о необходимости постоянного бэкапирования. Страшно представить что было бы, если бы не было бэкапов.Но меня всякого рода беды обходят стороной, бэкапами я еще ни разу не воспользовался, думаю и не придется ими пользоваться. И так начнем, задача: «Каждый день сохранять базу данных 1С и файлы из папки самой программы (конфигурация, папки пользователей, печатные формы и т.д. и т.п.)».
Для начала покажу как я все это делал вручную.
Для выгрузки файла базы данных, я подключаюсь по RDP к своему серверу, открываю Microsoft SQL Server Management Studio, ввожу данные для подключения к серверу, жму «Connect«
Все бы хорошо, но данную процедуру нужно делать каждый день. Тратиться на все про все около 5-7 минут времени, вроде и не много, но бывает забываю, а бывает и вовсе не сделаю за какой то день (слишком занят текущими задачами). Короче все это дело нужно срочно автоматизировать.
Как то я начинал гуглитьна тему автоматизации бэкапов базы данных 1С, но ничего толком не нашел, а буквально на днях снова задался этим вопросом, и собрал по крупицам вот такой вариант.
Для написания скрипта открываем блокнот и вносим туда следующую информацию
set DIR_BACKUP=D:\backup\Backup_Analit_%date%\ set DIR_ARCHIVE=\\srv-fs\backup\Backup_Analit_%date%\ set DIR_FILES=D:\shares\KrjymSQL-TEST\ set NAME_PC=srv-sql md %DIR_BACKUP% md %DIR_ARCHIVE% osql -S %NAME_PC% -E -Q "BACKUP DATABASE krjymtest TO DISK = '%DIR_BACKUP%\krjymtest.bak' with init" "c:\Program Files\7-zip\7z.exe" a %DIR_BACKUP%\DB_krjymtest_%date%.zip %DIR_BACKUP%\krjymtest.bak "c:\Program Files\7-zip\7z.exe" a %DIR_BACKUP%\FILES_krjymtest_%date%.zip %DIR_FILES%\* copy %DIR_BACKUP%\DB_krjymtest_%date%.zip %DIR_ARCHIVE%\ copy %DIR_BACKUP%\FILES_krjymtest_%date%.zip %DIR_ARCHIVE%\
Теперь подробнее:
Вот в принципе и все! Сохраняем файл под именем, например, Backup-1C.bat
Теперь нужно запустить планировщик задач на сервере, и добавить в него задание на запуск бэкапа. Как это сделать смотри ниже в скриншотах