我使用Windows调度程序创建了一个自动备份任务,使用.bat。
来备份我的数据库在我的备份文件夹里面有7个子文件夹(星期一,星期二,星期三......)来保存每日备份数据库。
如何删除上周的数据库并保留最新版本?例如,今天是星期四,我想删除最后一个星期四的数据库并保留今天的数据库?
这是.bat命令?
sqlcmd -S NATE-PC\SQLEXPRESS2008R2 -U user1 -P user -i C:\scheduled\schedule.sql
del d:\Backup\db_backup_*.bak ?? what should I write here
以下是每天运行的SQL查询
DECLARE @pathName NVARCHAR(512)
SET @pathName = 'D:\Backup\db_backup\' + DATENAME(DW,GETDATE())+'\'+ Convert(varchar(8), GETDATE(), 112) + '.bak'
BACKUP DATABASE [LEWREDB] TO DISK = @pathName WITH NOFORMAT, NOINIT, NAME = N'db_backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10
答案 0 :(得分:0)
尝试删除命令
forfiles /p "d:\Backup" /m "db_backup_*.bak" /c "cmd /c Del @path " /d -7