C# 编写的SqlServer 数据库自动备份服务,带配置,功能强大-阿里云开发者社区

开发者社区> 杰克.陈> 正文

C# 编写的SqlServer 数据库自动备份服务,带配置,功能强大

简介: 原文:C# 编写的SqlServer 数据库自动备份服务,带配置,功能强大 数据库自动备份服务,带配置,还算可以吧 周末抽时间,编写了一个这样的工具,可以让,对数据库不了解或不熟悉的人,直接学会使用备份,省时省力,同样,我也将一份,通过脚本进行备份的,也奉献上来, 通过sql脚本进行数据库备份...
+关注继续查看
原文:C# 编写的SqlServer 数据库自动备份服务,带配置,功能强大

数据库自动备份服务,带配置,还算可以吧

周末抽时间,编写了一个这样的工具,可以让,对数据库不了解或不熟悉的人,直接学会使用备份,省时省力,同样,我也将一份,通过脚本进行备份的,也奉献上来,

  1. 通过sql脚本进行数据库备份

通过脚本备份数据库,同样也支持压缩,但是需要安装winrar来实现,整体来说也还行,在服务器上创建一个 维护计划,就可以实现,也是很方便的,脚本如下:

EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;
RECONFIGURE;
declare @prefix         nvarchar(100),
        @datefile       nvarchar(100),
        @bakfile        nvarchar(100),
        @rarfile        nvarchar(100),
        @rarcmd         nvarchar(150),
        @str_date       nvarchar(100),
        @sql            nvarchar(100)
        
--设置备份的目录      
set @prefix='D:/DataBase/' 
set @str_date = replace(replace(replace(convert(varchar(20),getdate(), 120),' ',''),'-',''),':','')
set @datefile = 'xx' +@str_date
set @bakfile = @prefix+@datefile+'.bak'
set @rarfile = @prefix+@datefile+'.rar'
--备份
BACKUP Database mpe_db_Data TO DISK = @bakfile WITH NOFORMAT, NOINIT,  NAME = N'xx-完整 数据库 备份', SKIP, NOREWIND, NOUNLOAD,  STATS = 10
--压缩rar
set @rarcmd ='"c:\Program Files\WinRAR\winrar.exe" ' +'a -df ' +@rarfile+' '+@bakfile
exec master..xp_cmdshell @rarcmd,NO_OUTPUT;

别问我代码都是干啥的,无非就是打开权限,创建变量、时间戳的文件名、备份脚本、启动备份,哈哈。。都说完了,你也不用问了,

  • 你是不是要问,那删除文件呢?
--删除15天之前的备份
set  @sql='del  d:\DataBase\xx' +rtrim(replace(replace(replace(convert(varchar(20),getdate()-15, 120),' ',''),'-',''),':',''))+'.rar'

为啥删除15天的?你想删除多少天,自己写, -15 的15,随你填写。

好了,言归正传,下面是我编写的windows 服务实现,请看:

  1. 通过C#编写的windows服务进行数据库备份

使用方法如下

  • 通过 服务部署工具.bat 配置和安装windows服务

没了,嘎嘎。。上图

图1 使用管理员,打开部署脚本

图2 根据指示进行配置操作,输入1 是进入配置

图3 配置界面

 

图4 安装完成后,启动服务

好了,全部操作演示完毕,是不是说,那么师傅,代码呢?

楼下五步走

CSDN下载地址:https://download.csdn.net/download/l9861226/10585437

暂时还没有通过,得等等才通过审核,刚刚上传上

(代码纯手工打造,要点积分,别介意哈)

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
SQL Server 游标运用:查看一个数据库所有表大小信息(Sizes of All Tables in a Database)
原文:SQL Server 游标运用:查看一个数据库所有表大小信息(Sizes of All Tables in a Database) 一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) 方法一:运用游...
976 0
Mac下配置Oracle数据库客户端远程连接数据库服务器
下载mac数据库客户端: 地址:http://www.oracle.com/technetwork/topics/intel-macsoft-096467.html 下载这俩个:(来源:http://www.
3250 0
一直播、小咖秀大数据自动化运维实践
在高速成长发展型企业,我们需要大数据做得更多的不是平台,不是让平台做得多么好,让各个部门使用,而是让平台提升用户增长、扩大营收,有些处于高速发展期和成长期的公司可能跟我们面临同样的问题,大家可以共同探讨。
3130 0
+关注
杰克.陈
一个安静的程序猿~
10427
文章
2
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载