Azure SQL DB 可以被配置成为 SQL Server 事务复制的一个订阅者( subscriber )。

主要应用场景有两种:

  1. 将您的数据迁移到 Azure SQL DB, 并且没有宕机时间。
  2. 将 Azure SQL DB 作为 SQL on-premises / on VMs 的一个备份或只读实例。

我们扩展了已有的事务复制逻辑以使得 Azure SQL DB 可以成为一个事务复制订阅者。 从使用的体验上来说,能够察觉到的唯一的区别是在你创建一个订阅者的时候:你需要提供 Azure SQL DB 的 URL 而非一台 server 或者一个实例的名字。如果您已经知道了怎么使用事务复制,那么在 Azure SQL DB 上面使用这个功能的学习成本几乎为 0,意味着您将有一种无缝的体验。将数据复制到 Azure SQL DB 上将会变得非常轻松和便捷。当发布服务器和分发服务器至少是以下 SQL Server 版本之一时,支持此方案:

  • SQL Server 2016 CTP3(预览版)和更高版本
  • SQL Server 2014 SP1 CU3 和更高版本
  • SQL Server 2014 RTM CU10 和更高版本
  • SQL Server 2012 SP2 CU8 和更高版本
  • SQL Server 2012 SP3(发行时)

它是如何工作的呢?
数据的复制实际上是通过分发代理( Distribution Agent )完成的。
下面的这张表展示了整体的架构:

注意事项:

  1. 只支持 Snapshot 及单向的事务( onpromise sql 到 sql azure )复制. 不支持 Peer-to-peer transactional replication 及 merge replication。
  2. 只提供 SQL Azure V12 的支持。
  3. 无法通过 SQL Database 门户来配置事务复制。
  4. 复制只能使用 SQL Server 身份验证方式登录连接到 SQL DB。
  5. 只支持 push subscription。
  6. 被复制的表必须要有主键。

下面的例子展示如何用 SQL Server Management Studio 将 Azure SQL DB 配置成为一个事务复制订阅者。

  1. 创建一个新的事务复制。
    右键 Replication 下的 Local Publication,并选择 New Publication Wizard,会调出新建复制向导。
  2. 选择 Snapshot publication 或者 Transactional publication, 本示例以 Transactional publication 为例
  3. 完成向导中的后续步骤,创建一个复制。
  4. 创建一个新的订阅。
    右键刚刚创建的发布,选择 New Subscriptions,调出新建订阅向导。
  5. 完成向导中所需步骤,在下图 Subscribers 页面,点击 Add Subscriber -> Add SQL Server Subscriber。
  6. 输入所需的信息,连接到 Azure SQL DB。
  7. 选择一个 Subscription Database 来接受复制内容。
  8. 完成向导的余下部分,创建订阅。
  9. 创建订阅后,可以看到改订阅出现在之前创建的发布下。

在同步完成后,我们来验证一下复制是否生效。
向 SQL Server 发布的这张表中插入数据后,等复制发生之后,发现插入的数据出现在了 Azure SQL DB 指定的表中。 

【数据库-Azure SQL Database】如何创建事务复制将本地数据同步到 SQL Azure的更多相关文章

  1. SQL Server 事务复制分发到订阅同步慢

    原文:SQL Server 事务复制分发到订阅同步慢 最近发现有一个发布经常出现问题,每几天就出错不同步,提示要求初始化.重新调整同步后,复制还是很慢!每天白天未分发的命令就达五六百万条!要解决慢的问 ...

  2. Azure SQL Database (27) 创建Table Partition

    <Windows Azure Platform 系列文章目录> 昨天客户正好提到这个问题,现在记录一下. 我们在使用传统的SQL Server,会使用Table Partition,这个功 ...

  3. domino数据同步到sql server

          近期有个需求,要同步domino数据到selservlet数据库,查看几年前ls使用odbc写的同步功能,还能正常使用.而且加入读者域进去功能(之前没有这个需求).改进成网页配置版本号(曾 ...

  4. SQL Server 2008复制发布订阅(数据同步)

    数据库同步问题 1.有一台主数据库服务器A和另外一台数据库服务器B,客户端首先访问数据库B,当B数据库服务器挂掉时就访问A,当对数据库B进行DML操作时,同时对A进行更新,如果A与B之间通讯失败,则将 ...

  5. [SDK2.2]Windows Azure Storage (15) 使用WCF服务,将本地图片上传至Azure Storage (上) 服务器端代码

    <Windows Azure Platform 系列文章目录> 这几天工作上的内容,把项目文件和源代码拿出来给大家分享下. 源代码下载:Part1 Part2 Part3 我们在写WEB服 ...

  6. [SDK2.2]Windows Azure Storage (16) 使用WCF服务,将本地图片上传至Azure Storage (上) 客户端代码

    <Windows Azure Platform 系列文章目录> 前一章我们完成了服务器端的代码,并且已经发布到了Windows Azure云端. 本章我们将实现客户端的代码,客户端这里我们 ...

  7. 多点数据同步服务器sql汇总

    1. a表中是否存在c的列 IF COL_LENGTH('FeeType', 'ftName') IS NOT NULL select N'存在'as result ELSE select N'不存在 ...

  8. Azure SQL Database Active Geo-Replication 简介

    对于数据库的维护来说,备份工作可谓是重中之重.MS Azure 当然也提供了很完善的数据库备份功能.但是在动手创建备份计划前请思考一下备份工作的真实目的.当然首先要保证数据的安全,一般来说定时创建数据 ...

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

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

随机推荐

  1. HDU acm1028 整数划分 递归问题(递推)

    我们用递归+记忆化的方法来解决普通整数划分问题:定义 f(n,m)为将整数n划分为一系列整数之和,其中加数 最大不超过m. 得到下面的递推关系式: 当n==1 || m==1 只有一种划分,即 1 或 ...

  2. 机器学习之PCA主成分分析

    前言            以下内容是个人学习之后的感悟,转载请注明出处~ 简介 在用统计分析方法研究多变量的课题时,变量个数太多就会增加课题的复杂性.人们自然希望变量个数较少而得到的 信息较多.在很 ...

  3. js中实现子页面向父页面中赋值

    (方法一) 父页面: <input id="input1" type="text"/> <a href="javascript:wi ...

  4. 2.9-2.10 hive中常见查询

    一.查询语句 https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Select 1.select语法 SELECT [ALL ...

  5. 激光SLAM

    1.激光分类 维度分类: a.二维激光(单点反射.平面.旋转台) b.三维激光 距离分类: a.近距离:壁障.碰撞检测.路边检测 b.远距离:行人检测.定位.建图 特点: 优点: a.可以直接获取深度 ...

  6. TypeScript完全解读(26课时)_1.TypeScript完全解读-开发环境搭建

    1.TypeScript完全解读-开发环境搭建 初始化项目 手动创建文件夹 D:\MyDemos\tsDemo\client-demo 用VSCode打开 npm init:初始化项目 然后我们的项目 ...

  7. WeFlow 简单使用教程

    一.前言 WeFlow 是什么?一个高效.强大.跨平台的前端开发工作流工具.(官网定义),下载那些你们都知道,我就不一 一介绍了.下面我说一下简单使用: 二.使用教程 首先,我们使用 WeFlow 是 ...

  8. OpenCV入门指南

    http://blog.csdn.net/morewindows/article/details/8225783/ http://blog.csdn.net/poem_qianmo/article/d ...

  9. Modulation of Lipid Metabolism by Celastrol (文献分享一组-赵倩倩)

    文献名:Modulation of Lipid Metabolism by Celastrol (雷公藤红素对脂质代谢调节作用的研究) 期刊名:Journal of Proteome Research ...

  10. IT兄弟连 JavaWeb教程 Servlet会话跟踪 经典案例

    案例需求:编写一个servlet,可以向session中存放一个消息,再编写一个servlet可以从session取得session中存放的这个消息. 案例实现: package com.xdl.se ...