SQL Server发布订阅功能研究
前提:
发布订阅只能是同一个内网的机器上才能使用,其实这个可以用配置管理器的别名功能设置之后就可以了,外网的也能通过这样的方式来搞。
配置过程参考老D的文章:http://www.cnblogs.com/daizhj/archive/2009/11/18/1605293.html
原理图:
单向:
双向:
参考:http://bbs.51cto.com/thread-1165966-1.html
SQL Server发布订阅功能测试:
(我发觉这个功能很不行,为什么不行,我下面其中一台设置错误了就要全部重来,那么如果我下面有几百台机器,怎么重来?)
1、采用事务发布/快照发布进行发布订阅机制只能是读写分离的方案,也就是说A发布B订阅,只能是操作A的数据,B是同步过来,即使在B新增后,A不会新增。(也就是说单向同步,不是双向的)
1.1、采用合并复制进行发布订阅是可以A发布B订阅,A操作B得到最新数据,B操作A得到最新数据。(也就是说双向),(自增ID)这个功能测试后发现两者的数据是经过处理的,比如A的之间为100,B的最大值为9,下一条是10,那么同步过来之后,A的这台数据里面就不是100了,而是10;也就说数据会经过处理。这个功能会在每张表上增加一个rowid的列,这个列是GUID,估计是用于双向同步的作用而设计的。
2、2008新建订阅时,如果输入错误,是找不到这个订阅的,只能删除发布,再来重新搞。
3、2008上如果数据库连接端口更改,不是1433默认的之后,那么两端同步的时候都会不行,即使在配置管理器上新建了别名,也是不行的。(最后发现是可以的,如果新建了别名之后,要把原来的发布删除再重建)
4、同步的时间间隔大概是1分钟左右
操作说明:
一、基本的订阅发布过程配置
事务发布操作省略,配置过程参考老D的文章:http://www.cnblogs.com/daizhj/archive/2009/11/18/1605293.html
合并发布:
注意:这里是本机sa登录密码
订阅:
注意:这里是用来订阅的数据库
注意:这里是本机sa登录密码
最后查看效果:
发布类型官方说明:
快照发布:
发布服务器按预定的时间间隔向订阅服务器发送已发布数据的快照。
事务发布:
在订阅服务器收到已发布数据的初始快照后,发布服务器将事务流式传输到订阅服务器。
具有可更新订阅的事务发布:
在 SQL Server 订阅服务器收到已发布数据的初始快照后,发布服务器将事务流式传输到订阅服务器。来自订阅服务器的事务被应用于发布服务器。
合并发布:
在订阅服务器收到已发布数据的初始快照后,发布服务器和订阅服务器可以独立更新已发布数据。更改会定期合并。Microsoft SQL Server Compact Edition 只能订阅合并发布。
通俗说明:
快照发布:
发行端依排程定时将快照集传送到订阅端,缺点是数据量很大,时间较长。
这个只能是单向发布。
事务发布:
发行端第一次与订阅端同步数据完后,依排程定时传送日志资料,供订阅端重做。优点是数据量较小,适合长期同步数据所用。
这个只能是单向发布。
合并复制:
合并复制可以实现数据的多处更新,当更新冲突时,可以设置规则,比如北京和上海的服务器,我可以设置北京的服务器永远赢。
也就是说双向发布。
这里参考这位SQL MVP的文章:http://www.cnblogs.com/CareySon/p/3300936.html
深入说明:
参考这本书【Pro SQL Server 2005 Replication】
SQL Server发布订阅功能研究的更多相关文章
- SQL Server 发布订阅 发布类型详解
MicrosoftSQL Server 提供了三种复制类型. 每种复制类型都适合于不同应用程序的要求. 根据应用程序需要,可以在拓扑中使用一种或多种复制类型: 快照复制 事务复制 合并复制 为了帮助您 ...
- sql server 发布订阅
[配置] 一. 发布方 复制 >> 如果有问题 C:\Windows\System32\drivers\etc hosts: 127.0.0.1 ?? 二. 订阅方 订阅方设置结束 三. ...
- [sql server发布订阅]after触发器执行失败造成复制不成功
结论: (以插入而例) 发布端的数据插入成功 订阅段的数据不会插入 实验 创建一张新表 create table test_subscriber (id int, mark varchar(2),in ...
- SQL Server发布订阅报错:The conversion of a datetime data type to smalldatetime data type resulted in an out of range value.
执行SQL Server发布订阅时,报错如下信息: The conversion of a datetime data type to smalldatetime data type resulted ...
- SQL Server 2012 复制(发布订阅的研究)
原文:SQL Server 2012 复制(发布订阅的研究) 已实现发布订阅功能,可以实现局域网内双击备份. 一.注意事项: a) 使用[事务复制]功能 b) 必须是相同的SqlServer 帐号和密 ...
- SQL Server 复制 订阅与发布
SQL Server 复制 订阅与发布 通过SQL Server 2008数据库复制实现数据库同步备份 SqlServer2008 数据库同步的两种方式(Sql JOB) SqlServer2008 ...
- SQL SERVER发布与订阅 [原创]
一.配置分发 1.配置分发服务器,注:配置发布与订阅,连接SQLSERVER必须用服务器名登录 2.配置分发 3.选择分发服务器 4.选择快照文件夹 5.设置此文件夹的读写权限为everyone 6. ...
- SQL SERVER发布与订阅
一.配置分发 1.配置分发服务器,注:配置发布与订阅,连接SQLSERVER必须用服务器名登录 2.配置分发 3.选择分发服务器 4.选择快照文件夹 5.设置此文件夹的读写权限为everyone 6. ...
- SQL Server 中心订阅模型(多发布单订阅)
原文:SQL Server 中心订阅模型(多发布单订阅) 大多数SQL Server 复制拓扑都是基于中心发布模型,它是由一个发布复制到一个或者多个订阅.另一个复制模型是中心订阅模型,它使用事务复制由 ...
随机推荐
- Flex ActionScript版本的Map类型
ActionScript中没有Map类型,因为Object就相当于Map了.Object的属性相当于key,值相当于value. 也就是说,没有必要有Map类型.但是,这样做,也会带来一些问题,造成不 ...
- 苹果iPhone如何区分港版、国行、水货
要想分辨所购买的苹果产品[iPhone 4.iPod Touch.iPad 2.iMac.MacBook及iPhone 4S]是大陆行货.水货.港货还是其它,其实很简单.今天来教大家如何区分.大陆行货 ...
- linux不同角色server分区方案
服务器角色 分区建议 优点 RAID方案 单机服务器 如8G内存,300G硬盘 /boot 100-200M swap 16G,内存大小8G*2 / 80G /var 20G(也可 ...
- Burndown chart
S型的燃尽图 在一次milestone开发过程中,开发者会持续编辑issue列表,每个issue都有自己的生命周期.燃尽图预期这些issues会被线性的消灭掉,所以从第一天直接到最后一天画个直线表示预 ...
- C语言复习(1)
test.c #include <stdio.h> int main(){ printf("hello\n"); return 0; } 1.预处理阶段 由于在test ...
- 读懂IL代码就这么简单 (一)
一前言 感谢 @冰麟轻武 指出文章的错误之处,现已更正 对于IL代码没了解之前总感觉很神奇,初一看完全不知所云,只听高手们说,了解IL代码你能更加清楚的知道你的代码是如何运行相互调用的,此言一出不明觉 ...
- 自己存档:table 的css
border:0;margin:0;border-collapse:collapse;border-spacing:0;
- 关于Hellas和Greece
一直以来我就好奇,为什么希腊的中文名字“希腊”和英文名字”Greece”听起来都不像(就像“德国”不像“Germany”一样),而且,为什么在很多体育比赛中看到希腊运动员的衣服上都是“Hellas”, ...
- 安装win10
1.百度win10,看到的大都是雨林木风,ghost等江湖杂牌非原版系统.百度”msdn,我告诉你“进入微软MSDN下载中心(原来还有这么个好地方,以后就从这里下了),下载链接是ed2k格式的链接(e ...
- 1019mysql 复制技术
-- 第一步实现主从复制参照 http://369369.blog.51cto.com/319630/790921/核心点 :开启二进制日子和服务器ID,创建复制账号,配置连接主从服务器,查看各自状态 ...