日期:2014-05-17  浏览次数:20571 次

SQLSERVER2005自动备份并自动打压缩包问题
现在由于数据库数据比较多,在服务器上备份的时候占空间比较大,现在想让数据库文件自动备份后再让该文件自动打压缩包到别的磁盘中,请问该如何解决啊!求高手指点!

------解决方案--------------------
这个你要用xp_cmdshell来调用cmd中打包的命令,然后再用cmd来把文件移到别得磁盘并删除源文件(删除文件也可以用作业来实现)
你需要去找的就是cmd命令中如何压缩一个文件。
------解决方案--------------------
1:创建作业,定期备份,进行压缩。
2:创建IntegrationServices包制作备份,定期执行
------解决方案--------------------
引用:
现在由于数据库数据比较多,在服务器上备份的时候占空间比较大,现在想让数据库文件自动备份后再让该文件自动打压缩包到别的磁盘中,请问该如何解决啊!求高手指点!


压缩的话,可以使用写好的批处理,用xp_cmdshell 执行即可。 
推荐使用ssis的ftp处理。
------解决方案--------------------
写个bat,放在定时任务里

OSQL -E -q"backup database test to disk = 'd:\test.bak'"
zip db_backup.zip *.BAK
copy d:\test.bak \\...\test.back

osql也可以用sqlcmd代替,sqlcmd是新的命令行工具
zip可以从往上下载一个zip.exe的小程序,或者考虑用winzip的命令行
copy如果怕不稳定,可以用ftp,不过目标机器得架了ftp才行

图省事的话,在sql server里用xp_cmdshell也行,不过个人觉得没有命令行好调试。