找我

SQL2000与RAR结合压缩备份


虽然现在SQL Server2005已经成为SQL Server家族的主流趋势,SQL Server2005已经开发除了自动压缩备份等功能,但是还是写下自己在SQL2000服务器上写的压缩备份,留作纪念。

1、备份
use master
declare @path varchar(200) set @path='D:\Backup\DB_SQL2000\fbm_zjmcc.bak'
backup database fbm_zjmcc to
disk=@path with noinit
2、压缩(此处看到网上有人用exec xp_makecab来压缩备份,但是不知道为什么实现不了,只能退而取其次了
declare @path varchar(200) set @path='D:\Backup\DB_SQL2000\fbm_zjmcc.bak'
declare @cabpath varchar(200) set @cabpath='D:\Backup\DB_SQL2000\fbm_zjmcc.rar'
declare @cmdRar varchar(200) set @cmdRar = 'D:\Backup\rar.exe a -ag '+@cabpath+' '+@path
exec xp_cmdshell @cmdRar,no_output
3、删除原文件
declare @path varchar(200) set @path='D:\Backup\DB_SQL2000\fbm_zjmcc.bak'
declare @cmdDel varchar(200) set @cmdDel = 'del '+@path
exec xp_cmdshell @cmdDel,no_output


以下附从网上找到的方法:

  例1:(备份)
  1 use master
  2 declare @path=’c:\aa\zy.bak’
  3 backup database zy to
  4 disk=@path with noinit
  说明:
  1 使用系统库
  2 设置备份的路径及文件名,注意是用单引号引用.
  3 需备份的数据库
  4 设置备份的驱动器,将路径设给驱动器,再设定备份的方式(重写或覆盖)
  例2:(压缩备份的数据库文件)
  use master
  exec xp_makecab ’c:\m.cab’,mszip,1,’c:\aa\zy.bak’
  exec xp_cmdshell ’copy c:\123.cab’, ’d:\123.cab’
  说明:
  ’c:\m.cab’ 压缩备份的名称
  mszip 压缩方式
  ’c:\aa\zy.bak’ 被压缩文件的路径
  copy到另一个目录保存

posted @ 2008-06-23 13:25  窃马贼  阅读(479)  评论(0编辑  收藏  举报