网上关于sqlserver基于发布/订阅实现数据同步的文章很多,大多介绍不详细,各种copy。为实现发布服务器、订阅服务器数据库实时同步,近期花了几天时间认真研究了一下,并实践验证通过,希望本文能帮助到有同样需求的朋友们。
需求描述:项目部署2台web服务器采用负载均衡,2台db主从数据库,为确保主数据库发生故障时,通过快速切到从数据库服务器,程序不挂掉并且从数据库能最大化还原数据,减少数据丢失,基于sqlserver发布/订阅功能实现主从数据库数据实时同步。
一、发布/订阅配置
1、将主(发布服务器)数据库数据备份并在从(订阅服务器)数据库上还原,保持当前发布服务器和订阅服务器的一致。(此操作简单,这里不详细介绍)
2、新建分布(本文采用的是基于事务发布方式)
(1)发布服务器上新建发布
(2)选择需要发布的数据库,点击下一步
(3)选择事务发布,点击下一步
(4)勾选所有的发布对象,点击下一步
(5)无需筛选发布中数据,直接点击下一步
(6)立即创建快照,点击下一步
(7)安全设置
(8)输入发布SQL Server登录账户和密码,点击确定
(9)点击下一步