MSSQL Server2012备份所有数据库到网络共享盘上面,并自动删除几天前的备份。。

Posted 为乐而来

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MSSQL Server2012备份所有数据库到网络共享盘上面,并自动删除几天前的备份。。相关的知识,希望对你有一定的参考价值。

--要备份到哪一服务的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备份所有数据库到网络共享盘上面,并自动删除几天前的备份。。的主要内容,如果未能解决你的问题,请参考以下文章

MSSQL Server 数据库备份还原常用SQL语句及注意

MSSql Server 剔除某些表进行备份

MSSQL数据库高版本迁移到低版本

sql sever 2008数据库的还原备份问题

记一次 windows server 2012R2 上安装 MSSQL2005 及网站发布

c#备份还原MSSQL数据库