前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SQL2000自动备份 压缩 删除(备份文件)

SQL2000自动备份 压缩 删除(备份文件)

作者头像
跟着阿笨一起玩NET
发布2018-09-18 13:15:08
1.5K0
发布2018-09-18 13:15:08
举报

create proc dbbf_test as declare @dbname varchar(20), @cmd1 nvarchar(120), @cmd2 varchar(120), @cmd3 varchar(120), @i int, @filename varchar(80), @path varchar(80) set @dbname='TEST'--\\这是数据库名,使用时只需要把它改成你所要备份的数据库名即可,这个必须修改\\-- ----删除当前日期前15-前10天内的数据库备份,可根需要自行修改----

set @i=10 while @i<15 begin  set @cmd1  ='if exist E:\DATABACKUP\'+@dbname+convert(varchar(10),DATEADD(day,-@i,getdate()),112) +'*' +' del  '+'E:\DATABACKUP\'+@dbname+convert(varchar(10),DATEADD(day,-@i,getdate()),112) +'*' exec master..xp_cmdshell @cmd1----删除10天之前的数据库备份    set @i=@i+1 end ----备份数据库----

exec master..xp_cmdshell 'if not exist E:\DATABACKUP (md E:\DATABACKUP)'--如果E盘根目录没有DATABACKUP文件夹,则新建此文件夹 SELECT @filename=@dbname+replace(replace(replace(CONVERT(varchar(16), getdate(), 120 ),'-',''),' ','-'),':','')  SET @path='E:\DATABACKUP\'+@filename BACKUP DATABASE @dbname TO DISK=@path

----压缩数据库备份,删除原备份文件

set @cmd2='C:\PROGRA~1\WinRAR\winrar.exe a  -ibck E:\DATABACKUP\'+@filename+'.rar E:\DATABACKUP\'+@filename exec master..xp_cmdshell @cmd2----压缩数据库 set @cmd3='DEL E:\DATABACKUP\'+@filename exec master..xp_cmdshell @cmd3----删除原备份文件(只保留压缩包)

go

--1.修改本过程中目标数据库名成你要备分的数据库名 2.复制此行(可含此行)以上内空到查询分析器中执行即可 --3.数据库备份文件存放在E:\DATABACKUP文件夹中,文件名为 数据库名四位年两位月两位日-两位时两位分.rar

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2011-12-17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库备份服务
数据库备份服务(Database Backup Service,简称 DBS)是为用户提供连续数据保护、低成本的备份服务。数据库备份拥有一套完整的数据备份和数据恢复解决方案,具备实时增量备份以及快速的数据恢复能力,它可以为多种部署形态的数据库提供强有力的保护,包括企业 IDC 数据中心、其他云厂商数据库及腾讯公有云数据库。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档