转载:http://blog.csdn.net/sl521100/article/details/4396193

最近因为公司要升级HR系统,我被安排管理这个项目,公司为了安全起见和我签署了保密协议,按了手印责任就大了,所以要想办法加强系统、应用、数据库的安全,系统无法控制,应用的安全还不错,所以我就着手做数据库的安全,数据库用户及密码都控制了,现在需要对自动备份的数据文件进行加密,以下就是我使用到的工具、方法和代码共享出来,供大家参考。

第一个步骤:就是让SQL Server自动备份数据库,通过DB维护计划完成,这个我就不详细说了。

第二个步骤:就是加密并压缩备份的数据库文件。为了在备份后,马上进行压缩,最方便的就是直接使用SQL命令执行压缩,由于WinRAR可以通过命令行调用,所以我们可以使用SQL Server中的xp_cmdshell命令来执行压缩指令,同时通过其中的一些参数指定压缩密码,这样加密压缩就实现了。(为了实现此功能,服务器上要安装WinRAR)

第三步骤:修改维护计划里调用的SQL,在命令中输入执行备份、加密、删除备份的文件的存储过程。

实施步骤和代码:

1、在备份的数据库中建立存储过程

CREATE procedure hrp_backup
--alter procedure hrp_backup
WITH ENCRYPTION
ASdeclare@prefix nvarchar(100),@datefile nvarchar(100),@bakfile nvarchar(100),@rarfile nvarchar(100),@delcmd nvarchar(100),@rarcmd nvarchar(150)set @prefix='D:/Database_bak/' --备份文件夹set @datefile='HRM8_DBBAK_'+cast(Year(GetDate()) as varchar(4))+cast(Month(GetDate()) as varchar(2))+cast(Day(GetDate()) as varchar(2))set @bakfile=@prefix+@datefile+'.bak'set @rarfile=@prefix+''+@datefile+'.rar'BACKUP DataBASE HRM8 TO DISK = @bakfile WITH INIT , NOUNLOAD , NAME = N'HR数据备份', NOSKIP , STATS = 10, NOFORMAT--set @delcmd = 'del '+@prefix+ 'RAR/*.rar'   --先清空RAR备份文件夹set @rarcmd ='C:/Progra~1/WinRAR/WinRAR.exe a  -ppassword -df -ep1 '+@rarfile+' '+@bakfile-- -df压缩后删除文件 -ep1 从名称中排除基本目录--将password改为您要设置的密码,进行加密压缩--exec master..xp_cmdshell @delcmdexec master..xp_cmdshell @rarcmdgo

2、新建维护计划,在Transact-SQL命令中执行以上的存储过程。

exec hrp_backup
go  

验证调试成功。

SQL SERVER 定时自动备份,并将备份文件加密压缩(利用winrar)相关推荐

  1. SQL Server 定时自动备份和自动删除方法图文超详细步骤

    SQL Server自动备份和自动删除 打开数据库管理工具,选择管理–>维护计划 右键–>维护计划向导 点击下一步,计划名称可以自定义,在计划选项上,点击更改,频率更改为每天(可以自己的实 ...

  2. Sql Server定时自动备份数据库

    首先启动数据库"SQL Server代理",启动方式分两种 一.SQL Servers 配置管理器,将SQL Server 2005 服务中的SQL Server代理(SQL Se ...

  3. SQL SERVER 2008自动备份维护计划

    日常工作中利用SQL SQLSERVER 2008 的维护计划对数据库进行定期的备份,这样一方面可以对数据库进行备份保证数据安全另一方面也可以减轻对维护人员的负担.一般对于WEB 服务器进行维护都是在 ...

  4. SQL Server定期自动备份

    SQL Server定期自动备份 企业管理器中的Tools,Database Maintenance Planner,可以设置数据库的定期自动备份计划.并通过启动Sql server Agent来自动 ...

  5. SQL server 定时自动执行SQL存储过程

    当一个存储过程是为了生成报表,并且是周期性的,则不需要人工干预,由SQL作业定时自动执行些SQL存储过程即可. 本示例,假设已需要定时执行的存储过程为:Pr_test 工具/原料 SQL Server ...

  6. SQL Server 2012自动备份

    SQL 2012和2008一样,都可以做维护计划,来对数据库进行自动的备份. 现在做这样一个数据库维护的计划,每天0点对数据库进行差异备份,每周日0点对数据库进行完全备份,并且每天晚上10点删除一次过 ...

  7. 如何让SQL Server数据库自动备份并压缩

    我们通常在维护数据库的时候,都会建立一个备份的机制,在SQL Server中,我们就可以通过如下的方法来实现: 如果SQL Server代理没有启动,我们先把其启动,然后新建立一个作业,名称命名为&q ...

  8. SQL Server数据库自动备份

    在备份数据之前,为备份数据文件建立一个独立的文件夹,方便区分: 一.开启SQL代理服务: 找到SQL Server配置管理器,如图: 二.找到SQL Server服务-->右边找到SQL Ser ...

  9. sql server 设置自动备份

    打开SQL server配置管理器,设置sql server服务里的SQL server代理服务为自动并启动. 启动Master Data Services Configuration Manager ...

最新文章

  1. Redis 在CentOS 6上的 安装和部署以及redis的主从复制sentinel实现HA
  2. 数据备份_「Cassandra实战」Cassandra数据备份
  3. VS2015智能提示由英文改为中文
  4. 6月第2周回顾:雅虎收购案谈崩 中国***成焦点
  5. angularjs初始化时不显示模板内容, 不显示html, 不显示template
  6. python方差的计算公式为什么减一_样本标准差分母为何是n-1
  7. MyBatis 实现多表查询、resultMap 标签、MyBatis 注解、mybatis运行原理
  8. Hive的10种常用优化总结,再也不怕MapReduce分配不均了
  9. IE6利用iframe遮挡 弹层 select
  10. 计算机辅助英语教学电子版,计算机辅助英语教学探究.pdf
  11. EndnoteX7/8/9参考文献不按顺序出现
  12. 计算机专业课件制作,计算机科学与技术专业毕业论文--多媒体课件设计与制作.doc...
  13. 【计算机组成原理】寄存器的本质——锁存器
  14. 直播app系统源码,自定义弹框的简单写法Demo
  15. ROS下里程计辅助2D激光雷达去运动畸变
  16. 偶然看到的一篇文章中的励志诗
  17. 常用照片规格尺寸对照表
  18. #NAME?_#NAME?
  19. oracle收集snop,SNAP收集服务器信息
  20. springboot找不到对象(自动注入失败)

热门文章

  1. Linux 下 MySQL 安装教程
  2. scala 查询ip归属地 测试
  3. C++ 斐波那契数列递归求解 进阶版
  4. 96801-55-7|2-Thio-PAF|cas2127109-84-4|Tyk2-IN-8选择性的 TYK2 抑制剂
  5. OpenCV图像处理视频教程——入门篇(二)
  6. 我把面试 ThreadLocal 能问的,都写了
  7. ws协议如何在https中生效
  8. 走近中国的Oracle (转)
  9. 【NLP learning】Tokenizer分词技术概述
  10. html大学生网站开发实践作业:旅游网站设计——联途旅游网(39页) HTML+CSS+JavaSc 旅游网页html 开心旅游网html 旅游网前端框架HTML模板...