SQL Server 2012 复制(发布订阅的研究)

时间:2024-05-21 23:34:56

原文:SQL Server 2012 复制(发布订阅的研究)

已实现发布订阅功能,可以实现局域网内双击备份。

一、注意事项:

a) 使用【事务复制】功能

b) 必须是相同的SqlServer 帐号和密码

c) 要开始发布订阅时,有时需要在发布里【查看快照代理状态】,点击【启动】

d) 服务名称需要手动解析IP,需要实际的服务名称才能推送数据,不能用IP(这个会有提示),可以在发布和订阅服务器的host文件增加对“订阅或发布服务器数据库服务名称”,才可以连接到订阅服务器,host文件在system32/drivers/etc/目录里

e) 推送和请求(FTP)模式可以成功,请求模式需要用sa帐户

二、可以同步的数据:

1.表记录的增加、修改、删除

2.表字段的增加、现有字段设置默认值

三、不会同步的操作有:

a) 新建表等

四、导致停止同步的操作有:

a) 在订阅数据库上删除记录后,在发布数据库有对这条记录的操作时,导致同步停止,需要手工再对订阅【重新初始化】才能继续同步,还有其它操作等。

b) 需要检查发布数据库的兼容级别:我们一般设置成2008,默认是2005(不支持data类型),兼容级别可以 “右键数据库 > 属性 > 选项里设置”。关于还有哪些兼容,可以查看官方文档

c) 在SQL2012中,订阅服务器需要设置代理帐户权限,将【C:\Program Files\Microsoft SQL Server\110】设置为可写,要不然会报错,如图:

SQL Server 2012 复制(发布订阅的研究)

五、被禁止的操作有:

1.发布服务器表字段名的修改,会出现如下提示:

SQL Server 2012 复制(发布订阅的研究)

2.发布服务器表的字段类型和字段的顺序也不能修改,会出现下图:

SQL Server 2012 复制(发布订阅的研究)

他会提示一个删除,也就是说,修改表的字段类型和字段顺序会导至重新建表

六、FTP发布

a) 请求模式的FTP或共享的需要相的sa帐户和密码

b) 在发布属性里,快照的地址和ftp的地址需要一样,若有自动生成ftp文件夹,则根目录后面加/ftp,如图:

SQL Server 2012 复制(发布订阅的研究)

c) 快照的地址就是ftp的地址

SQL Server 2012 复制(发布订阅的研究)

SQL Server 2012 复制(发布订阅的研究)

七、还需解决的问题:

1.检测ftp模式是否用只读权限也是可以的。

2.验证在由于异常而停止时,在恢复同步后,数据是否会丢失

3.数据丢失如何才能最少的成本解决

以上若有都有实践测试过,会对事务复制的运作大至有个了解,完毕