我正在使用 Windows Server 2003、Sql-Server 2005 和 7-zip 进行存档。
每天的维护计划都会将所有数据库添加到备份中,我需要存档这些文件。
如何创建 .bat 或 .vbs 脚本
- 删除以前的存档
- 仅将新文件(当天的文件)添加到存档中,同时将此存档命名为 1sql_020810.7z(日期)
我不需要 7-zip 命令的帮助,但需要 dos/vbs 的帮助。我不知道如何获取当前日期和当天的文件以进行存档...
谢谢。
答案1
在您的 SQL Server 维护计划中,您可以删除以前的备份(但是,它不会知道有关您的存档的任何信息)
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 Server 中的当前备份重命名为具有日期的备份,并将文件名添加到下次需要的文件中。然后您可以使用 7zip 进行压缩。
请注意,我没有测试过这一点,但这个概念应该可行。