SqlServer2012的AlwaysOn技术 可以同时连多个只读副本吗?

webchengping 2015-05-14 03:30:29
为三个replica分别设置readonly routing的顺序。以SQL108W2K8R21为例,当SQL108W2K8R21成为Primary replica时,readonly routing的顺序依次为SQL108W2K8R22->SQL108W2K8R23-> SQL108W2K8R21. Listener会将客户端的请求导向到SQL108W2K8R22,如果SQL108W2K8R22不可用,导向到SQL108W2K8R23,以此类推。

alter availability group ag MODIFY REPLICA ON N'SQL108W2K8R21' WITH (PRIMARY_ROLE(READ_ONLY_ROUTING_LIST=(N'SQL108W2K8R22', N'SQL108W2K8R23', N'SQL108W2K8R21')))

alter availability group ag MODIFY REPLICA ON N'SQL108W2K8R22' WITH (PRIMARY_ROLE(READ_ONLY_ROUTING_LIST=(N'SQL108W2K8R21', N'SQL108W2K8R23', N'SQL108W2K8R22')))

alter availability group ag MODIFY REPLICA ON N'SQL108W2K8R23' WITH (PRIMARY_ROLE(READ_ONLY_ROUTING_LIST=(N'SQL108W2K8R21', N'SQL108W2K8R22', N'SQL108W2K8R23')))


网上的一段配置,SQL108W2K8R21为主副本,SQL108W2K8R22,SQL108W2K8R23位只读副本

客户端连接:
Server=AgListener;database=agdb1;Integrated Security=SSPI;ApplicationIntent=Readonly


看上面的描述应该只会连接到一个只读副本上,而不是随机的连接两个只读副本, 情况是这样吗?
怎么样配置才可以所有只读副本一起使用
...全文
3706 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
lacrimosalyin 2016-03-25
  • 打赏
  • 举报
回复
hello,楼主你好 目前我也在配置,但是在最后设置只读的时候,就算smss工具加了readonly的参数,还是会把我分配到主副本上去,不知道是我哪里配置不对,可以指点下吗? 谢谢你
li_shiye 2016-03-01
  • 打赏
  • 举报
回复
引用 4 楼 webchengping 的回复:
[quote=引用 3 楼 u013226693 的回复:] 实现LB的方式很多啊,软负载可以考虑LVS,硬负载有F5,看你想花多少钱了
Sqlserver2014,副本都增到9个了,一次只有一个只读副本能访问,其他的呆那不干活, 这是什么设计思想? [/quote] 多个副本,可以根据不同业务分别访问不同的副本吧,,,不非要通过侦听器来判断,只从一台副本读取数据。。 我个人是这么理解的
dali88888 2015-07-06
  • 打赏
  • 举报
回复
引用 5 楼 u013226693 的回复:
alwayson毕竟是从12才有的新功能,实现LB还有一段路要走,据说SQL 2016将加入LB的功能。目前只能通过第三方实现负载均衡
DBTWIN集群的负载均衡效果很好,整体性能大大提高
  • 打赏
  • 举报
回复
引用 5 楼 u013226693 的回复:
alwayson毕竟是从12才有的新功能,实现LB还有一段路要走,据说SQL 2016将加入LB的功能。目前只能通过第三方实现负载均衡
MSSQL2016支持secondary nodes的LB.
俺是大菠萝 2015-05-15
  • 打赏
  • 举报
回复
alwayson毕竟是从12才有的新功能,实现LB还有一段路要走,据说SQL 2016将加入LB的功能。目前只能通过第三方实现负载均衡
webchengping 2015-05-15
  • 打赏
  • 举报
回复
引用 3 楼 u013226693 的回复:
实现LB的方式很多啊,软负载可以考虑LVS,硬负载有F5,看你想花多少钱了
Sqlserver2014,副本都增到9个了,一次只有一个只读副本能访问,其他的呆那不干活, 这是什么设计思想?
俺是大菠萝 2015-05-15
  • 打赏
  • 举报
回复
引用 2 楼 webchengping 的回复:
[quote=引用 1 楼 u013226693 的回复:] sql 2012 alwayson只读路由,只能连接到可用的第一个辅助副本上。不能实现所有可读副本都分配到连接;
有没有大神可以自己搞一个监听器让它随机访问可读副本,实现可读服务器的负载均衡? 或者有其他的解决方案实现负载均衡吗?[/quote] 实现LB的方式很多啊,软负载可以考虑LVS,硬负载有F5,看你想花多少钱了
webchengping 2015-05-15
  • 打赏
  • 举报
回复
引用 1 楼 u013226693 的回复:
sql 2012 alwayson只读路由,只能连接到可用的第一个辅助副本上。不能实现所有可读副本都分配到连接;
有没有大神可以自己搞一个监听器让它随机访问可读副本,实现可读服务器的负载均衡? 或者有其他的解决方案实现负载均衡吗?
俺是大菠萝 2015-05-14
  • 打赏
  • 举报
回复
sql 2012 alwayson只读路由,只能连接到可用的第一个辅助副本上。不能实现所有可读副本都分配到连接;

6,129

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 新技术前沿
社区管理员
  • 新技术前沿社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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