Назад | Перейти на главную страницу

Как заархивировать вновь добавленные резервные копии БД?

Я использую Windows Server 2003, Sql-Server 2005 и 7-zip для архивирования.

Ежедневный план обслуживания добавляет все БД в резервную копию, и мне нужно заархивировать только эти файлы.

Как создать сценарий .bat или .vbs, который

  1. удаляет предыдущий архив
  2. добавляет в архив только новые (текущего дня) файлы, присвоив этому архиву имя 1sql_020810.7z (дата)

Мне нужна помощь не с командами 7-zip, а с dos / vbs. Я не знаю, как получить текущую дату и файлы этого дня в архив ...

Спасибо.

в вашем плане обслуживания sql-сервера вы можете удалить предыдущую резервную копию (однако она ничего не будет знать о вашем архиве)

for /f "tokens=*" %%I in (currentarc.txt) do call :prune %%I
goto :renbackup

:prune
del %1


:renbackup
For /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set date=%%a-%%b-%%c)

move d:\backup\dbbackup.bak c:\backup\dbbackup%date%.bak
echo dbbackup%date%.bak > currentarc.txt
7z .....  (do your 7zip stuff on the file)

первая часть этого командного файла удаляет прошлый архив

вторая часть командного файла переименовывает текущую резервную копию с сервера sql в резервную копию с датой и добавляет имя файла к файлу, который вам понадобится в следующий раз. тогда вы можете выполнить сжатие с помощью 7zip.

обратите внимание, что я не тестировал это, но концепция должна работать.