SQL server自动备份并FTP远程传输

版权归属:天凯科技
本文链接: https://blog.csdn.net/dbs_service/article/details/102675658

出于安全考虑,SQL数据库备份文件,很多时候需要本地备份完后,传输至远程服务器保留,下面脚本利用SQL代理作业,对多个数据库进行备份后传输至远程服务器:

--Backup(循环备份多个数据库)

Declare @str varchar(max)=''

select

@str=@str+'Backup Database '

+name+' to disk = ''E:\test\sqlbak\'

+name+'_'+replace(replace(replace(convert(nvarchar(16),getdate(),120),'-','_'),':','') , ' ','_')

+'.bak'' with compression,init;'

from sys.databases where name in ('dev','weekseo')

select @str ;

exec (@str);

EXEC xp_cmdshell 'ftp -s:E:\test\ftpconfig.txt 127.0.0.1'

--Del backupfile(删除过期的备份文件)

Declare @Date datetime

select @Date=GETDATE()-10

print @Date

EXECUTE master.dbo.xp_delete_file 0,N'E:\test\sqlbak',N'bak',@Date

注意:上面脚本,其中E:\test\ftpconfig.txt 是FTP的配置文件,包括用户名密码等信息,这里不做介绍,E:\test\sqlbak为数据库本地备份目录。另外127.0.0.1要调整成自己的远程服务器。


天凯科技-数据库技术支持
7*24小时提供数据库运维与优化服务,十年DBA实战经验,长期服务于国内关键行业,深受好评!
服务热线/微信:13926108245
本企业定期分享DBA实战处理经验,同时分享精品视频教程,更多资源请点击访问"天凯运维资讯"获得!

猜你喜欢

转载自blog.csdn.net/dbs_service/article/details/102675658