概念参见:https://msdn.microsoft.com/zh-cn/library/ms151170.aspx

推送订阅

对于推送订阅,发布服务器将更改传播到订阅服务器,而无需订阅服务器发出请求。

更改可以按需、连续地或按照计划推送到订阅服务器。 分发代理或合并代理在分发服务器上运行。

  • 通常,数据将连续同步或按照经常重复执行的计划同步。

  • 发布要求数据近似实时地移动。

  • 分发服务器上较高的处理器开销不会影响性能。

  • 通常与快照和事务复制一起使用。

请求订阅

对于请求订阅,订阅服务器请求在发布服务器上所做的更改。

请求订阅允许订阅服务器上的用户确定同步数据更改的时间。 分发代理或合并代理在订阅服务器上运行。

  • 数据通常按需或按计划同步,而非连续同步。

  • 发布具有大量订阅服务器,并且/或在分发服务器上运行所有代理会消耗大量资源。

  • 订阅服务器是自主的、断开连接的和/或移动的。     订阅服务器将确定连接和同步更改的时间。

  • 通常与合并复制一起使用。

1.环境准备

1.WIN7+SQL 2012 两台机器

如:10.58.8.114  登陆账号 TestB    10.58.8.96  登陆账号 TestA

2.新建两个数据库实例:

如: 10.58.8.114       实例名 TestB     10.58.8.96  实例名 TestA

3.两台机器创建相同的 登陆账号和密码,并将其加入到管理员权限  (解决 错误22022)

4.设置 SQL SERVER 服务登陆账号为当前管理员账号(发布服务器和订阅服务器都要设置)(解决 错误22022) 

5.设置 SQL SERVER 代理 登陆账号为当前管理员账号并为自动启动(发布服务器和订阅服务器都要设置)(解决 错误22022)

6.确保两台机器能够PING ,端口也是互通

7.两台机器创建数据库 TestPublishA

8.发布服务器创建表TableA 并向其写入数据,创建视图ViewA

准备工作完毕,下面实现发布主体

2.实现发布主体

主体数据库>>复制>>本地发布>>右键

选择发布的数据库 TestPublishA

快照发布

选择发布对象,表、视图、存储过程等。

查看项目问题 忽略

筛选表行 忽略

快照代理,我这边没有做计划,计划坐在 订阅服务器上

代理安全设置 我已经配置了代理服务启动为当前计算机管理员 .\TX

创建发布

完成

3.实现订阅主体

订阅数据库>>复制>>本地订阅>>右键>>新建订阅

下一步

查找发布服务器

选择发布

设置订阅向导

设置订阅数据库

设置分发代理安全性

设置同步计划

订阅初始化

完成

4.发布与订阅状态查看

1,发布服务器 右键>>启动复制监视器

可以看到其运行状态如下

2.订阅服务器

右键>>查看同步状态

监视

5.数据有效性

在发布服务器上添加数据

在订阅服务器上添加数据

等待订阅同步完成后 ,我们可以看到 订阅后的数据 以发布数据为准,如下

本文来自  释迦苦僧  http://www.cnblogs.com/woxpp/p/4293955.html

SQL 2012 发布与订阅实现数据同步 图解(解决 错误22022)的更多相关文章

  1. SQL 数据库 复制 与订阅 实现数据同步

    摘自: http://www.jb51.net/article/18039.htm

  2. SQL SERVER发布与订阅 [原创]

    一.配置分发 1.配置分发服务器,注:配置发布与订阅,连接SQLSERVER必须用服务器名登录 2.配置分发 3.选择分发服务器 4.选择快照文件夹 5.设置此文件夹的读写权限为everyone 6. ...

  3. SQL SERVER发布与订阅

    一.配置分发 1.配置分发服务器,注:配置发布与订阅,连接SQLSERVER必须用服务器名登录 2.配置分发 3.选择分发服务器 4.选择快照文件夹 5.设置此文件夹的读写权限为everyone 6. ...

  4. sql数据库发布、订阅同步方式操作

    Sql数据库发布订阅分为两个步骤:1.发布.2.订阅.首先在数据源数据库服务器上对需要同步的数据进行发布,然后在目标数据库服务器上对上述发布进行订阅. 一.发布. 发布需要用实际的服务器名称,不能使用 ...

  5. SQL Server双机热备之发布、订阅实现实时同步

    一.复制的功能概述 SQL Server 复制功能实现了主从库的分离,从而将主库的压力分解掉,主库就主要负责数据的更改等,而主库主要负责查询ji.另外,有了主.从库,则从另一个方面,也了一层安全性,即 ...

  6. SQL Server 2008中的MERGE(数据同步)

    OK,就像标题呈现的一样,SQL Server 2008中的MERGE语句能做很多事情,它的功能是根据源表对目标表执行插入.更新或删除操作.最典型的应用就是进行两个表的同步. 下面通过一个简单示例来演 ...

  7. SqlServer2008发布订阅(数据同步)

    目录 1. 发布必备条件 1.1. 数据库故障还原模型必需为完全还原模型 1.2. 数据库被同步的数据表必须有主键 1.3. 计算机名称来进行SQLServer服务器的注册 1.4. SQLServe ...

  8. SQL Server同一表不同列数据同步

    直接上脚本 update table set a=b where a=xxx table==表名称 a==需要同步的列 b==数据源列,就是a列要的数据是b列的数据 where 条件.不加where则 ...

  9. SQL 2008发布与订阅

    网的教程很多,大都是不能成功,只有这一篇是成功的! https://www.cnblogs.com/DBArtist/p/5803271.html

随机推荐

  1. JAVA定义接口格式:

    [public]interface 接口名称 [extends父接口名列表] { //静态常量 [public] [static] [final] 数据类型变量名=常量值; //抽象方法 [publi ...

  2. MySql表名的大小写问题

    MySQL在Linux下数据库名.表名.列名.别名大小写规则是这样的: 1.数据库名与表名是严格区分大小写的: 2.表的别名是严格区分大小写的: 3.列名与列的别名在所有的情况下均是忽略大小写的: 4 ...

  3. 自定义ImageView回调实现手动改变圆环大小

    //-----------------自定义MyView继承Imageview------------------------------- package com.bw.yuanhuan; impo ...

  4. mysql之group_concat函数详解

    函数语法: group_concat( [DISTINCT]  要连接的字段   [Order BY 排序字段 ASC/DESC]   [Separator '分隔符'] ) 下面举例说明: sele ...

  5. iOS 设置tableview头部不可以向下拉动..

    - (void)scrollViewDidScroll:(UIScrollView *)scrollView { CGPoint point = scrollView.contentOffset; i ...

  6. 反射生成SQL语句

    public static int Reg(Model ml) { bool b = true; Visit vt = new Visit(); StringBuilder builder = new ...

  7. 关于.net 中Clipboard.GetDataObject() 之后读出数据读出的数据都是相同的解决方法

    模拟键盘sendkey("^c") 多次复制之后 当使用Clipboard.GetDataObject() 读出数据都是一个值 经过多次尝试 提供一个解决方案 IDataObjec ...

  8. PHP会话Session

    <?php //开启会话,PHP会话也提供多种存储方式,文件.数据库等 session_start(); if(isset($_GET['user'])) { $_SESSION['user'] ...

  9. 给“.Net工资低”争论一个了结吧!

    昨天我写了一篇<工资低的.Net程序员,活该你工资低>,底下的支持.争吵.骂娘的评论依旧像之前几篇园友的博客一样繁荣.公说公有理,婆说婆有理,这样争吵下去永远没有尽头.数据没有情绪,是公正 ...

  10. 【Leetcode】【Medium】Pow(x, n)

    Implement pow(x, n). 解题思路: 求浮点数的幂次方,注意可能为负数次幂: 可以使用二分搜索的思想,当n为偶数时,x^n = x^(n/2) * x^(n/2),因此只需要求得一半的 ...