sqlserver远程异地备份(ftp方式传送)

sqlserver远程异地备份(ftp方式传送),第1张

概述sqlserver远程异地备份(ftp方式传送) sqlserver 远程异地备份 问题描述 客户的sqlserver 数据库服务器每日凌晨自动备份T1数据库,现在要求同时将备份文件自动上传到一台存储服务器(有FTPSERVER)上 解决方案 1. 开发一个window服务程序每日凌晨将本机(数据库服务器)的备份文件以FTP方式上传到存储服务器上 2. 利用sqlserver 的xp_cmdshe sqlserver远程异地备份(ftp方式传送) sqlserver 远程异地备份 问题描述 客户的sqlserver 数据库服务器每日凌晨自动备份T1数据库,现在要求同时将备份文件自动上传到一台存储服务器(有FTPSERVER)上 解决方案 1. 开发一个window服务程序每日凌晨将本机(数据库服务器)的备份文件以FTP方式上传到存储服务器上 2. 利用sqlserver 的xp_cmdshell 工具调用FTP命令将备份文件上传到存储服务器上 具体方法 第一种方案不再描述 第二种方案实现如下 1. 确认存储服务器FTP服务可用,确认用户名秘密 2. 使用以下sql代码打开xp_cmdshell使用权限(sqlserver 2005 默认关闭) sp_configure 'show advanced options',1 GO RECONfigURE GO sp_configure 'xp_cmdshell',1 GO RECONfigURE GO 3. 在sqlserver数据库服务器C:\dbbackup\下创建 FTP 脚步文件ftpconfig.txt 内容如下,第一行用户名第二行秘密,如果匿名第一行 anonymous 第二行空行 123 123 put C:\dbbackup\*.tempBAK close quit 4. 在sqlserver数据库查询分析器测试以下sql代码,假设数据库名 testdb 备份位置C:\dbbackup 存储服务器IP 192.168.0.44 declare @tempfilename varchar(100) set @tempfilename= CONVERT(varchar(8),GETDATE(),112)+ CONVERT(varchar(2),DatePart (Hour,GETDATE()))+ CONVERT(varchar(2),DatePart (Minute,GETDATE())) + CONVERT(varchar(2),DatePart (second,GETDATE())) print @tempfilename declare @tempfilename1 varchar(100) set @tempfilename1='C:\dbbackup\testdb'+ @tempfilename +'.tempBAK' backup database testdb TO disK = @tempfilename1 EXEC xp_cmdshell 'ftp -s:c:\dbbackup\ftpconfig.txt 192.168.0.44 ' –anonymous declare @temp varchar(100) set @temp='ren C:\dbbackup\testdb'+ @tempfilename +'.tempBAK '+'testdb'+ @tempfilename +'.BAK' print @temp EXEC xp_cmdshell @temp 5. 在sqlserver数据库上建立维护计划,定时自动执行第四部分sql 总结

以上是内存溢出为你收集整理的sqlserver远程异地备份(ftp方式传送)全部内容,希望文章能够帮你解决sqlserver远程异地备份(ftp方式传送)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/1174216.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存