SQLSERVER的读写分离

KOPC 2013-08-07 11:27:11
两台服务器,同一个机房内,目前数据库版本都是SQLSERVER2008,一台作为主服务器,一台作为备份服务器,想两台服务器实时同步,业务部分使用主服务器,一些繁琐的查询,统计操作使用备份服务器。要实现这个功能,有哪几种方案,最优方案是什么。
如果有湖南地区的高手可以当面解决类似的问题更好,重酬,站内短信联系。
...全文
697 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
KOPC 2013-08-08
  • 打赏
  • 举报
回复
谢谢上面的回复,帮我解决了很多问题,公司岗位缺人,暂时负责这块业务,对SQLSERVER不是很熟悉,一头的包,整理下上面的思路,还有些疑问会开新帖提问。不知道有没有愿意到湖南工作的SQLSERVER高手来接手这份工作,可以提供20%以上的加薪。
Andy__Huang 2013-08-08
  • 打赏
  • 举报
回复
引用 4 楼 DBA_Huangzj 的回复:
如果是2008的话,根据你的要求,如果不借助第三方软件,好像只有replication也就是复制技术来实现是最好的。主服务器进行发布,另外一台服务器进行订阅,用其中的事务复制可以实现实时同步数据,然后对于报表功能,可以在连接字符串或者中间层写死指向订阅服务器,而其他日常的操作就指向主服务器,这样理论上可以分摊压力。如果有打算升级到2012,alwayson是很不错的读写分离功能。
用发布和订阅实现同步。 补充:在程序访问端做两条访问数据库连接,一条是写数据就连接主服务器,另一条统计查询的就连接服务备份服务器。
Shawn 2013-08-08
  • 打赏
  • 举报
回复
除了复制,及2012的alwayson,其它的技术的缺点基本上都达不到要求。详细分析请参考: http://www.cnblogs.com/DBFocus/archive/2010/08/04/1791668.html 建议用复制,但复制带来的延迟,楼主要事先考虑清楚。如果硬件充裕,可按下面配置 #1.发布服务器(已有) #2.分发服务器(单独,且与发布内网相连) #3.只读服务器(单独,且与分发内网相连)
發糞塗牆 2013-08-08
  • 打赏
  • 举报
回复
如果是2008的话,根据你的要求,如果不借助第三方软件,好像只有replication也就是复制技术来实现是最好的。主服务器进行发布,另外一台服务器进行订阅,用其中的事务复制可以实现实时同步数据,然后对于报表功能,可以在连接字符串或者中间层写死指向订阅服务器,而其他日常的操作就指向主服务器,这样理论上可以分摊压力。如果有打算升级到2012,alwayson是很不错的读写分离功能。
Mr_Nice 2013-08-08
  • 打赏
  • 举报
回复
引用 楼主 u011630792 的回复:
两台服务器,同一个机房内,目前数据库版本都是SQLSERVER2008,一台作为主服务器,一台作为备份服务器,想两台服务器实时同步,业务部分使用主服务器,一些繁琐的查询,统计操作使用备份服务器。要实现这个功能,有哪几种方案,最优方案是什么。 如果有湖南地区的高手可以当面解决类似的问题更好,重酬,站内短信联系。
sql server 的高可用部分 说的就是这种类似的需求 。但是在实际使用中,要考虑性能问题,lz设定的前提是读写在物理上分离。 这种在一定程度上就需要承担部分数据的不一致(秒级差异也是差异),实际使用中碰到的 ,基本都可以有一定时间的差异(可以理解为很多标准量具中的公差),使用上是没有什么问题的。 相关说明参考 http://msdn.microsoft.com/zh-cn/library/ms190202.aspx
lzw_0736 2013-08-08
  • 打赏
  • 举报
回复
如果要做到两台服务器实时同步,就不可能做到读写分离. 因為实时同步=写.
---涛声依旧--- 2013-08-08
  • 打赏
  • 举报
回复
两个数据库结构都是一模一样的吧? 若是的话采用发布、订阅的方式最好了

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧