服务器之家

服务器之家 > 正文

SqlServer2005 自动备份并存储另一电脑上的存储过程函数

时间:2020-07-04 14:36     来源/作者:MSSQL教程网

复制代码 代码如下:


--Full BackUp
--Use Master
CREATE proc [dbo].[bakup_DataBase]
as
Declare @strPsw varchar(50)
Declare @strUsr varchar(50)
Declare @strCmdShell varchar(300)
Declare @strDataBaseName varchar(20)
Declare @FullFileName Varchar(200)
Declare @FileFlag varchar(50)
Declare @ToFileName varchar(200)
Declare @SQLStr varchar(500)
Declare @SQLStr2 varchar(500)
Declare @FlagDel varchar(20)
Set
@FileFlag=replace(replace(convert(char(20),getdate(),20),':','') ,' ','-') --备份的文件命名规则:日期-时间.bak
Set @strUsr='SOFMTI_TD\administrator' --需填写域名\用户名(目标机器的Windows 登陆名)
Set @strPsw='sofmit'--需填写Windows 登陆密码(如:Soondy)
Set @strCmdShell= 'net use \\192.168.0.22\c$ ' + @strPsw + ' /user:' +@strUsr --需填写IP(目标机器的IP 地址,如:192.168.2.178)
Set @strDataBaseName='LilianDB'--填写数据库名称(如:Soondy)
Set @FullFileName='E:\SqlServer自动备份文件\'+'LilianDB_backup_'+@FileFlag+'.BAK'
--需填写本地备份临时文件的目录,因为需要先备份到本地再 copy 到目标机器(如:保存目录为 E:\SoondyTest\)
Set @ToFileName='\\192.168.0.22\D$\OneCardBak\' --需填写IP(目标机器的IP 地址)以及保存的目录(如:\\192.168.2.178\c$\Test\)
Set @FlagDel='False'--填写True 表示删除本地的备份临时文件,填写False 或其他字符表示保留该文件
Set @SQLStr='copy '+@FullFileName+' '+@ToFileName
Set @SQLStr2='del ' +@FullFileName
BackUp DataBase @strDataBaseName To Disk= @FullFileName with init
exec master..xp_cmdshell @strCmdShell--尝试连接到目标机器
exec Master..xp_cmdshell @SQLStr --拷贝到目标机器上
if (@FlagDel ='True') exec master.. xp_cmdshell @SQLStr2--删除本地的备份临时文件

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
返回顶部