嫌长不看版

本文介绍了通过复制和导出两个操作,将 Azure SQL 数据库中的内容转移至其他位置(例如本地环境)的具体做法。借此可以帮助用户在 Azure 中运行数据库的同时,在本地或指定的其他位置额外保留一个副本,满足制度或业务等各方面的要求。

操作细节版

很多用户向小编提出了这样一个问题:已经在使用 Azure SQL 数据库服务,虽然该服务有非常完善的数据备份和灾备机制,但出于公司制度或其他方面的要求,需要定期将数据库的完整内容下载到本地保存,哪怕手工操作也可以。

这当然是可以的,不过首先小编想再次向大家强调一下 Azure SQL 服务提供的各种数据保护机制:

  • Azure SQL 可在(基本、标准、高级三个服务级别的)数据库层面提供 99.99% 的服务级别协议。

  • 高级版提供主动地域复制功能,可在任何 Azure 区域创建多达 4 个可读辅助副本,并控制在何时何处进行故障转移。

  • 通过自助式还原可更好地对“不利条件下的恢复”加以控制,客户可以从可用数据备份副本控制数据还原的全过程。

  • 在高级版中,SQL 数据库最多可将备份副本保存 35 天,供您随时进行恢复。

好了,明确这些问题后,看看到底该如何将 Azure SQL 中的数据保存到本地吧。

方法一:对 Azure SQL 数据库进行复制

对于 Azure SQL 数据库,我们可以用多种方式在相同或不同服务器上创建现有 Azure SQL 数据库的事务一致性副本。数据库副本是源数据库截至复制请求发出时的快照,我们可以选择相同或不同服务器、其服务层和性能级别、相同服务层中的不同性能级别(版本)。在完成复制后,副本将成为能够完全行使功能的独立数据库。此时,可以将其升级或降级为任何版本。

我们可以根据具体需要,通过 Azure 门户、PowerShell,或者 Transact-SQL 将 Azure SQL 数据库复制到本地(或者其他位置)。

以 Azure 门户下的操作为例,只需登录 Azure 管理门户,打开要复制的数据库相应的配置界面,然后点击工具栏上的「复制」,并选择要复制到的目标服务器,这就可以了。

当然也可以通过 PowerShell,使用 New-AzureRmSqlDatabaseCopy 这个 cmdlet 进行复制:

这个方法的进一步介绍,以及更多操作方式的具体做法,可以参阅:复制 Azure SQL 数据库

方法二:将 Azure SQL 数据库导出为 BACPAC 文件

除了进行复制,也可以执行导出操作,获得 Azure SQL 数据库对应的 BACPAC 文件。这种方式更适合数据存档或转移至其他平台等用途。

BACPAC 文件是一个扩展名为 BACPAC 的 ZIP 文件,它包含来自 SQL Server 数据库的元数据和数据。我们可将 BACPAC 文件存储在 Azure Blob 存储或本地存储中,之后可以导入回 Azure SQL 数据库或 SQL Server 本地安装。

使用该方法前有几个问题需要注意:

  • 为保证导出的事务处理方式一致,必须确保导出期间未发生写入活动,或者正在从 Azure SQL 数据库的事务处理方式一致性副本中导出。

  • 如果是导出到 Blob 存储,则 BACPAC 文件最大大小为 200GB。若要存档更大的 BACPAC 文件,请导出到本地存储。

  • 不支持使用这个方法将 BACPAC 文件导出到 Azure 高级存储。

  • 如果从 Azure SQL 数据库进行的导出操作超过 20 个小时,系统可能会取消该操作。

我们可以通过 Azure 门户、SQL Package 实用程序、SQL Server Management Studio,以及 PowerShell将 Azure SQL 数据库导出为 BACPAC 文件。

以 Azure 门户下的操作为例,只需登录 Azure 管理门户,打开要导出的数据库相应的配置界面,然后点击工具栏上的「导出」,并选择要导出到的存储位置和其他选项即可。

此外也可以通过 PowerShell,使用 New-AzureRmSqlDatabaseEmport 这个 cmdlet 向 Azure SQL 数据库服务提交导出数据库请求。

这个方法的进一步介绍,以及更多操作方式的具体做法,可以参阅:将 Azure SQL 数据库导出到 BACPAC文件

立即访问http://market.azure.cn

将 Azure SQL 内数据下载到本地,满足企业的「数据收集」的更多相关文章

  1. 使用Automation将Azure SQL DB容灾到本地

    前段时间有个客户有如下需求,将Azure SQL Database数据库容灾到本地(备份频率1小时/次). 那么对于这样的需求,我们可以使用Azure Automation来实现自动化备份到本地. 大 ...

  2. Azure SQL Database (24) 使用新管理界面,创建跨数据中心标准地域复制(Standard Geo-Replication)

    <Windows Azure Platform 系列文章目录> 文本是对:SQL Azure (17) SQL Azure V12 - 跨数据中心标准地域复制(Standard Geo-R ...

  3. Azure 进阶攻略 | 上云后的系统,「门禁」制度又该如何实现?

    各位办公室白领们,不妨回想一下自己每天去公司上班时的一些细节. 为避免「闲杂人等」进入工作场所,我们需要证明自己是这家公司的员工才能进入,对吧!所有员工,无论所属部门或职位,都必须先证明自己身份,例如 ...

  4. [转]Azure 表存储和 Windows Azure SQL Database - 比较与对照

    本文转自:https://msdn.microsoft.com/library/azure/jj553018 更新时间: 2014年10月 作者:Valery Mizonov 和 Seth Manhe ...

  5. Azure SQL Database (25) Azure SQL Database创建只读用户

    <Windows Azure Platform 系列文章目录> 本文将介绍如何在Azure SQL Database创建只读用户. 请先按照笔者之前的文章:Azure SQL Databa ...

  6. 医学图像数据(三)——TCIA部分数据下载方式

    前为止,本人还没有找到不需要账号的就可以部分下载的方式,因此这里讲的是需要注册账号下载部分数据的方法. 注意:下载部分数据需要注册账号 注册账号网址:https://public.cancerimag ...

  7. DEM数据及其他数据下载

    GLCF大家都知道吧?http://glcf.umiacs.umd.edu/data/ +++++++++++++++去年12月份听遥感所一老师说TM08初将上网8万景,可是最近一直都没看到相关的网页 ...

  8. 【数据库-Azure SQL Database】如何创建事务复制将本地数据同步到 SQL Azure

    Azure SQL DB 可以被配置成为 SQL Server 事务复制的一个订阅者( subscriber ). 主要应用场景有两种: 将您的数据迁移到 Azure SQL DB, 并且没有宕机时间 ...

  9. SQL Azure (14) 将云端SQL Azure中的数据库备份到本地SQL Server

    <Windows Azure Platform 系列文章目录> 注意: 1.只有SQL Server 2012 CU4及以上版本才支持本章内容 2.当你的数据库文件很大时,建议优化以下内容 ...

随机推荐

  1. Qt 学习之路 2(2):Qt 简介

    Home / Qt 学习之路 2 / Qt 学习之路 2(2):Qt 简介 Qt 学习之路 2(2):Qt 简介  豆子  2012年8月21日  Qt 学习之路 2  43条评论 Qt 是一个著名的 ...

  2. Linux系统之ssh命令

    ssh命令用于远程登录上Linux主机. 常用格式:ssh [-l login_name] [-p port] [user@]hostname更详细的可以用ssh -h查看. 不指定用户: ssh 1 ...

  3. Codeforces Round #532 (Div. 2)- A(思维)

    This morning, Roman woke up and opened the browser with nn opened tabs numbered from 11 to nn. There ...

  4. 8.11zju集训日记

    今天的比赛打得很不好,前一个小时的看的题目都非常难,没有做出题目,中期看到两道题,一道题是我读题,金大佬solo的,另外一道题是金大佬读题,写了代码但wa了,然后我和zz找bug,最后发现答案的范围是 ...

  5. springmvc怎么重定向

    转载大神: https://blog.csdn.net/wabiaozia/article/details/50252661

  6. Python模块:operator简单介绍

    Python官方文档地址:https://docs.python.org/3.6/library/operator.html?highlight=operator Operator提供的函可用于对象比 ...

  7. java——线程的wait()和notify()

    这是一个关于生产者和消费者的线程通信的例子: package thread_test; public class PCThread { public static void main(String[] ...

  8. c++11 多线程 1

    第3章 线程间共享数据 本章主要内容 共享数据带来的问题 使用互斥量保护数据 数据保护的替代方案 保护共享数据结构的最基本的方式,是使用C++标准库提供的互斥量(mutex). 清单3.1 使用互斥量 ...

  9. 大型分布式java应用与SOA

    1.基于消息方式.远程调用方式的架构带来的问题: 1.1 系统多元化的问题 [解决]: 对共用逻辑部分进行抽象: 1.2 系统访问量.数据量上涨后带来的问题 [解决]: 拆分系统: 1.3 在构建共用 ...

  10. myEclipse更换SVN登录账号

    Win10下 找到下面路径删除其下的所有文件 C:\Users\Administrator\AppData\Roaming\Subversion\auth\svn.simple AppData默认隐藏 ...