如何自动备份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. 使用Number.parseFloat引发的悲剧

    起因: 前几天,项目中有人用了Number.parseFloat(xxx)方法.在Chrome和FF中是可以使用的.然而在IE中却报错,提示不存在这个function. Solution: 经查Jav ...

  2. Mongodb--gridfs与分片实验

    1.放置一个大文件到gridfs,查看fs.chunks和fs.files的情况. Step1.开启一台mongod服务. ./mongod --dbpath dbs/master     登录mon ...

  3. TestNG之参数化

    TestNG提供了两种参数化的方式,一种是通过XML,一种是通过代码实现,下面对这两种方式做介绍. 一.通过xml /** * <suite name="Suite" par ...

  4. 【软件使用】用IntelliJ IDEA开发Android程序图解

    博主这里使用的最新的14.0.3版本,下载地址:http://www.jetbrains.com/idea/, 下载后直接安装就可以了. 环境: OS:Win 8 IDE:IntelliJ IDEA ...

  5. 2014 Super Training #2 C Robotruck --单调队列优化DP

    原题: UVA 1169  http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show ...

  6. YOU ARE MY SUNSHINE

    /*you are sunshine, my only sunshine, you make me happy when skies are grey. you'll never know dear ...

  7. 解决Linux中java.net.UnknownHostException: oracledb.sys.iflashbuy.com问题

    Linux环境报java.net.UnknownHostException: oracledb.sys.iflashbuy.com,原因为Linux下无法解析oracledb.sys.iflashbu ...

  8. IO流的练习2 —— 复制单级文件夹中的文件

    需求:把C:\Users\Administrator\Desktop\记录\测试里面的所有文件复制到 C:\Users\Administrator\Desktop\新建文件夹\copy文件夹中 分析: ...

  9. ABP入门系列(6)——展现层实现增删改查

    这一章节将通过完善Controller.View.ViewModel,来实现展现层的增删改查.最终实现效果如下图: 一.定义Controller ABP对ASP.NET MVC Controllers ...

  10. c# 扩展方法奇思妙用

    # 扩展方法出来已久,介绍扩展方法的文章也很多,但都是笼统的.本人最近一直在思考扩展方法的应用,也悟出了一些,准备将这最近一段时间对扩展方法的思考,写成一个系列文章.每个文章只介绍一个应用方面,篇幅不 ...