1. 程式人生 > >MSSQL Server2012備份所有數據庫到網絡共享盤上面,並自動刪除幾天前的備份。。

MSSQL Server2012備份所有數據庫到網絡共享盤上面,並自動刪除幾天前的備份。。

server2 ini pen nis tput lec HERE data tab

--要備份到哪一服務的IP網絡位置,要提前打開文件夾共享.這裏還要輸入用戶名和密碼,下面這一行是建立共享

exec master..xp_cmdshell ‘net use \\192.168.8.108\DBBak Password /user:192.168.1.108\administrator‘,NO_OUTPUT

go

declare @s nvarchar(200),@del nvarchar(200)
select @s=‘‘,@del=‘‘

--自動備份,並刪除4天前的備份。可以隨意改數字.
declare datebak cursor for
select
[bak]=‘backup database ‘+quotename(Name)+‘ to disk =‘‘\\192.168.8.108\DBBak\‘+Name+‘(‘+convert(varchar(10),getdate(),120)+‘)‘+‘.bak‘‘ with init‘,

[del]=‘exec master..xp_cmdshell ‘‘ del \\192.168.8.108\DBBak\‘+Name+‘(‘+convert(varchar(10),getdate()-4,120)+‘)‘+‘.bak‘‘, no_output‘
from master..sysdatabases where dbid>4 --不備份系統數據庫
open datebak


fetch next from datebak into @s,@del
while @@fetch_status=0
begin
exec (@del)
exec(@s)

fetch next from datebak into @s,@del
end
close datebak
deallocate datebak
go

--刪除共享鏈接

exec master..xp_cmdshell ‘net use \\192.168.8.108\DBBak/delete‘

go

MSSQL Server2012備份所有數據庫到網絡共享盤上面,並自動刪除幾天前的備份。。