博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL2000自动备份 压缩 删除(备份文件)
阅读量:6682 次
发布时间:2019-06-25

本文共 1223 字,大约阅读时间需要 4 分钟。

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

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

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

转载地址:http://gqxao.baihongyu.com/

你可能感兴趣的文章
【05】中级:翻页采集(以微博博主主页采集为例)
查看>>
iOS不规则按钮的响应事件的处理方法
查看>>
Linux下密码过期时间设置
查看>>
神经质人格
查看>>
iOS 画圆形
查看>>
OSSEC编写DECODE
查看>>
Hibernate 通用底层Dao
查看>>
JAVA 常用的工具类总结
查看>>
网络安装linux
查看>>
社交大革命,不可遏止的互联网春天
查看>>
蜂巢科技发布首款创新产品“小清新”空气卫士
查看>>
今天访问量过3000了,自己留个脚印
查看>>
FFmpeg笔记 -- AVPacket、AVFrame
查看>>
工作区配置 4
查看>>
Android开发工程师,前行路上的14项技能
查看>>
w 查看系统负载 uptime vmsta 详解 top 详解 sar 命令 free 命令
查看>>
ps 查看进 netstat 查看端口
查看>>
网页图表Highcharts实践教程之认识Highcharts
查看>>
LPC2103学习之GPIO
查看>>
管理岗是什么鬼?
查看>>