如何自动备份SQL数据库到Storage呢。

前提条件需要SQL Server2012 SP1 CU2或更高版本

1. 备份SQL Azure数据库到云存储Storage

1)在SQL Server Management Studio中创建Storage存储身份认证

创建Storage身份认证信息脚本样例如下:

IF NOT EXISTS

(SELECT * FROM sys.credentials

WHERE credential_identity = 'mycredential')

CREATE CREDENTIAL mycredential WITH IDENTITY = 'mystorageaccount'

,SECRET = '<storage access key>' ;

2)从数据库导出数据包文件*.BACPAC,并存储到Storage的blob中。

脚本样例如下:

BACKUP DATABASE AdventureWorks2012

TO URL = 'https://mystorageaccount.blob.core.windows.net/mycontainer/AdventureWorks2012.bak'

WITH CREDENTIAL = 'mycredential'

,COMPRESSION

,STATS = 5;

GO

上面两步使用的TSQL语句可以用在SQL脚本(如存储过程)或者开发编程(如C#调用)中使用,达到导出数据包BACPAC文件到Storage的目的。

2. 自动备份数据库

1)可以使用Task Scheduler创建计划(Schedule)运行脚本或者程序

2)可以开发编程并发布Windows Azure Worker Role到云服务上定时运行脚本

关于怎样使用Task Scheduler来备份数据,可以参考:http://support.microsoft.com/kb/2019698

注意:

  1. 在创建计划或者开发程序,并设置特定的时间来运行,两次运行的时间要合理定义,不要在上次任务没运行前启动下次任务。这个时间段取决于数据库的大小和数据服务器负载的情况。
  2. 使用异常处理机制和重试(Retry)机制来避免错误,例如超时。
  3. 在设定重试逻辑的时候,不要立即重试,需要一定的时间间隔,而且重试的间隔应该越来越长。

要备份或者恢复数据库使用Storage,至少需要SQL server 2012 SP1 CU2。

http://technet.microsoft.com/en-us/library/jj919148.aspx这篇文章有详细的描述。

下载地址如下:

SQL Server2012 SP1 CU2

http://support.microsoft.com/kb/2790947

支持使用Storage备份和还原数据库

SQL Server2012 SP1 CU4

http://support.microsoft.com/kb/2833645/zh-cn

支持Powershell 操作使用Storage备份和还原数据库

自动备份SQL数据库到云存储Storage的更多相关文章

  1. 自动备份SQL数据库 并删除指定日期之前的备份文件

    /// <summary>        /// 数据备份        /// </summary>        /// public bool DataBackup(st ...

  2. Linux自动备份MySQL数据库脚本代码

    下面这段Linux的Shell脚本用于每日自动备份MySQL数据库,可通过Linux的crontab每天定时执行 在脚本中可设置需要备份的数据库表清单,并且会将备份文件通过gzip压缩.需要注意的是, ...

  3. Linux下自动备份MySQL数据库并上传到远程FTP服务器

    Linux下自动备份MySQL数据库并上传到远程FTP服务器且删除指定日期前的备份Shell脚本 说明:  1.备份MySQL数据库存放目录/var/lib/mysql下面的xshelldata数据库 ...

  4. 在生产环境下实现每天自动备份mysql数据库

    1.描述 我相信很多朋友在工作都都会有这种需求,老板或领导让你每天都要备份mysql数据库,你该如何实现呢,是每天到一定的时间在服务器上敲一遍mysql的备份命令,还是想写个脚本,定时定点的自动备份呢 ...

  5. 如何在生产环境下实现每天自动备份mysql数据库

    1.描述 通"shell脚本+定时任务"的方式来实现自动备份mysql数据库. 2.环境 备份路径:/data/mysqlbak/ 备份脚本:/data/mysqlbak/mysq ...

  6. Linux下通过脚本自动备份Oracle数据库并删除指定天数前的备份

    说明: Oracle数据库服务器操作系统:CentOSIP:192.168.0.198端口:1521SID:orclOracle数据库版本:Oracle11gR2 具体操作: 1.root用户登录服务 ...

  7. 一个自动备份mysql数据库的bat文件内容

    自动备份mysql数据库,并已当前的日期时间为目录 copy过去, xcopy将近15年没有用dos命令,还是这么亲切 另 本方法是备份数据库文件,不是dump导出,然后再计划任务中使用,我用的是wa ...

  8. Linux 每天自动备份mysql数据库的方法

    Linux 每天自动备份mysql数据库的方法 作者: 字体:[增加 减小] 类型:转载   linux下为了安全有时候需要自动备份mysql数据库,下面是具体的实现步骤.   /usr/bin为my ...

  9. Linux下自动备份Oracle数据库并删除指定天数前的备份

    说明: Oracle数据库服务器 操作系统:CentOS IP:192.168.0.198 端口:1521 SID:orcl Oracle数据库版本:Oracle11gR2 具体操作: 1.root用 ...

随机推荐

  1. Javascript中substr和substring的区别

    由于在项目中有需要对字符串进行截取,然后手残使用了IDE自动提示的substr,没想那么多以为substr和substring没多大区别. 然而并不是,且听我一一道来. 1. substr(index ...

  2. swift函数的用法,及其嵌套实例

    import Foundation //swift函数的使用 func sayHello(name userName:String ,age:Int)->String{ return " ...

  3. 烂泥:KVM使用裸设备配置虚拟机

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 何谓裸设备?百度百科显示: 裸设备(raw device),也叫裸分区(原始分区),是一种没有经过格式化,不被Unix通过文件系统来读取的特殊块设备文件 ...

  4. jiulianhuan 快速幂--矩阵快速幂

    题目信息: 1471: Jiulianhuan 时间限制: 1 Sec  内存限制: 128 MB 提交: 95  解决: 22 题目描述 For each data set in the input ...

  5. 【温故而知新-Javascript】理解 DOM

    DOM(Document Object Model,文档对象模型)允许我们用 JavaScript 来探查和操作 HTML 文档里的内容.它对于创建丰富性内容而言是必不可少的一组功能. 1. 理解文档 ...

  6. 【MVC 4】4.MVC 基本工具(Visual Studio 的单元测试、使用Moq)

     作者:[美]Adam Freeman      来源:<精通ASP.NET MVC 4> 3.Visual Studio 的单元测试 有很多.NET单元测试包,其中很多是开源和免费的.本 ...

  7. 如何用ZBrush确定头部五官的位置

    之前和大家讲过如何在ZBrush中确定头部雕刻,在第一阶段中面数很少,只能将大型体雕刻出来,由于面数太少不能进行下面的雕刻.接下来第二阶段的调整,需要重新分布模型表面的网格,增加面数,进行五官的位置的 ...

  8. 边工作边刷题:70天一遍leetcode: day 101

    dp/recursion的方式和是不是game无关,和game本身的规则有关:flip game不累加值,只需要一个boolean就可以.coin in a line II是从一个方向上选取,所以1d ...

  9. Google Map API 使用总结

    Google Map API (一):显示一个最基本的地图 1 实现一个地图:<head>中引用: <script type="text/javascript" ...

  10. 实习小记-python 内置函数__eq__函数引发的探索

    乱写__eq__会发生啥?请看代码.. >>> class A: ... def __eq__(self, other): # 不论发生什么,只要有==做比较,就返回True ... ...