SQL Server 复制订阅

标签:SQL SERVER/MSSQL SERVER/数据库/DBA/高性能解决方案/高可用html

概述  

配置复制就没有数据库镜像和AlwaysOn的要求那么高,只须要两台服务器能经过TCP进行通信便可,两台服务器操做系统和SQL版本均可以不彻底一致,并且两台服务器也不须要加入域,因此配置复制订阅就简单多了,可是复制订阅主要是针对数据表而不能像镜像和AlwaysOn那样配置整个数据库,这也是它的缺点吧。数据库

接下来主要除了前面介绍配置复制订阅后面还会解释一些须要注意的事项。安全

复制数据库:AdventureWorks2008R2服务器

 

注意:性能

1.发布的表必需要存在主键和汇集索引,以前遇到过上G级别的表由于没有汇集索引致使订阅失败。ui

2.一个发布项目不要包含的表不要太大,因为发布生成快照的过程当中会锁表同时会堵塞相应表的进程,若是表太大致使生成快照的时间过长势必会致使服务器堵塞很是的严重有时候还会出现很严重的问题!!!,能够经过多建立几个发布项目来解决。spa

3.发布服务器和分发服务器分开,减小发布服务器的压力。操作系统

4.注意一些特殊字符类型的字段会致使建立订阅失败,这里面能够将字段的数据类型改为unicode类型的字段,unicode类型的字段在SQLServer中以N开头,好比nchar、nvarchar、ntext等。3d

5.若是要建立请求订阅,那么快照文件夹路径须要配置共享文件夹。代理

 

目录

配置分发服务器

将分发服务器和发布服务器配置为同一台服务器。

1.复制-本地发布-配置

2.配置分发向导-下一步

3.CLU11是发布服务器,这里选择将CLU11同时配置为分发服务器,会在CLU11上面建立分发数据库

4.选择快照路径,默认路径便可

注意:若是要建立请求订阅,那么这里须要配置共享文件夹

5.分发数据库名称和分发数据库数据文件、日志文件路径

6.默认下一步

7.默认完成

8.完成分发服务器配置

建立发布

1.复制-本地发布-新建发布 

2.选择须要发布的数据库

3.选择发布类型-事务发布

发布类型总共有四种,这里配置最经常使用的事务发布类型

4.选择须要配置发布的表

建立发布的表必定要存在主键列

5.查看发布的项目属性,默认配置便可

6.在表项目属性中主要是配置将哪些对象和设置应用的订阅服务器,

在属性中咱们能够看到会复制汇集索引、排序规则、DML操做、DLL操做等应用到订阅服务器,

由于通常发布服务器和订阅服务器的业务应用是不同的,因此默认只会复制这些主要的对象,不会复制非汇集索引外键等,由于在订阅服务器可能须要建的它须要的业务场景的索引。

7.不配置筛选,默认下一步

8.勾选当即建立快照并保持可用状态

9.配置代理安全性帐户

10.用于链接到发布服务器的rep帐户必须拥有AdventureWorks2008R2数据库的全部者权限,服务器级别的权限public便可

11.建立发布-下一步

12.输入发布项目名称

13.完成发布数据库配置

建立订阅

1.在订阅服务器中-复制-本地订阅-新建订阅 

2.选择发布服务器-查找SQL Server发布服务器

3.链接CLU11发布服务器

4.因为CLU11服务器中只配置了一个发布,因此默认显示出刚才配置的发布

5.配置分发代理位置-选择在分发服务器上运行全部代理

6.下一步

8.配置订阅代理安全性帐户

9.链接到订阅服务器的帐户一样须要订阅数据库的全部者权限,服务器级别也是Public便可

10.代理计划-连续运行

11.初始化时间-当即

12.建立订阅

13.完成订阅建立

14.完成

查看配置

1.在发布服务器CLU11的路径下能够找到新生成的快照文件路径

 

2.在CLU11发布服务器的系统数据库中建立了“distribution”分发数据库

3.在订阅服务器,订阅数据库“AdventureWorks2008R2”中生成了发布的两张表,

注意:订阅数据库与发布数据库不须要同样,这里不要被误解

4.在发布服务器的复制下建立了一个发布项目

5.查看复制监视器,在这里能够配置和查看发布订阅和监控分发状况,能够配置警告

6.发布属性-这里能够配置和修改发布

7.订阅属性-这里能够修改订阅安全登入帐号

8.在发布服务器的代理中生成了三个做业,分别是和分发有关的快照日志读取做业,和发布有关的发布做业,和订阅有关的分发做业。

 

添加新的发布表

1. 在复制监视器-个人发布服务器-CLU11-右键发布项目-属性,去掉”仅显示列表中已选中的项目勾选“

勾选”AWBuildVersion“表,肯定保存

建立发布的表必定要存在主键列

2.复制监视器-个人发布服务器-CLU11-右键发布项目-生成快照

3.在订阅数据库查看生成的订阅表

4.在发布服务器的快照文件夹下面能够看到生成了一个新的快照文件夹

5.查看订阅属性,能够看到分发历史记录

总结

 因为将分发服务器和发布服务器配置在同一台服务器,对发布服务器会有必定的压力,在平时的操做过程当中若是须要对发布的表进行删除字段的操做以前首先要查看订阅表中是否建立了该字段的索引,若是建立了须要把字段从索引中去掉,不然会形成发布订阅报错。

 

SQL Server 高可用方案大全:

SQL Server AlwaysOn:http://www.cnblogs.com/chenmh/p/4484176.html

SQL Server 镜像:http://www.cnblogs.com/chenmh/p/4452902.html

SQL Server 事务日志传输:http://www.cnblogs.com/chenmh/p/3671030.html

SQL Server 复制:http://www.cnblogs.com/chenmh/p/4487766.html

故障转移群集:http://www.cnblogs.com/chenmh/p/4479304.html

SQL Server 2016快照代理过程分析:http://www.cnblogs.com/chenmh/p/7895991.html

 

 

备注:

    做者:pursuer.chen

    博客:http://www.cnblogs.com/chenmh

本站点全部随笔都是原创,欢迎你们转载;但转载时必须注明文章来源,且在文章开头明显处给明连接,不然保留追究责任的权利。

《欢迎交流讨论》

相关文章
相关标签/搜索