sqlserver AlwaysOn实现读写分离配置及java/net代码实现

本文介绍了SQLServer AlwaysOn配置实现读写分离,以及在Java和.Net环境中如何实现读写操作的数据源切换。讨论了为何不采用数据库中间件如Proxy的原因,指出应用层解决读写分离的优缺点。
摘要由CSDN通过智能技术生成

1.用读写分离的原因:

在这里插入图片描述

  • O、读写量很大,为了提升数据库读写性能,将读写进行分离;
  • O、如果多机房下写少读多,同时基于数据一致性考虑,只有一个主库存入所有的数据写入,本地再做从库提供读取,减少多机房间直接读取带来的时延。

2.sqlserver AlwaysOn读写分离配置

Alwayson相对于数据库镜像最大的优势就是可读副本,带来可读副本的同时还添加了一个新的功能就是配置只读路由实现读写分离,2016及以上版本甚至实现只读负载。

  • 设置高可用Always On

在这里插入图片描述

  • 右击可用性组设置属性常规设置,设置主角色允许读写连接,可读副本设置为只读意向。

在这里插入图片描述

  • 然后关键性一步就是设置只读路由
  • 在这里插入图片描述

2016以下版本数据库可视化连接工具可能没显示只读路由的选项,你可以也可以用命令实现路由指定。

2014只读只支持单负载命令

--设置集群路由
ALTER AVAILABILITY GROUP [可用性组名]
MODIFY REPLICA ON
N'DB1(DB名)' WITH
(PRIMARY_ROLE (READ_ONLY_ROUTING_LIST=('DB2','DB3')));
ALTER AVAILABILITY GROUP [SQLAlwayOn_Te
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值