SQL Server AlwaysOn配置两个节点加共享文件夹仲裁见证

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
简介:

概述  

之前讲过多数节点的仲裁配置,多数节点一般3个节点以上的奇数个节点;常见的是使用3个节点节点多了也是浪费因为Alwayson的只读路由只能利用到一个只读副本,但是从Windows2008开始可以用共享文件夹来代替一个节点来充当仲裁;这就又可以节省一台服务器了只需要两台数据库服务器加任意一台电脑的共享文件夹,但是一般会选择在域服务器上创建共享文件夹。但是要注意该共享文件夹的权限需要everyone角色拥有读写权限。

 

 

数据库:SQLServer2014 SP2

OS:Windows Server 2008R2

 

一、配置仲裁

 

可以在创建故障转移集群的时候配置,也可以创建完集群后右键集群来修改仲裁配置

这里的共享文件夹路径使用域服务器已经创建好的共享网络路径

注意:这个路径的权限必须everyone角色具有读写权限,否则集群会出现以下错误提示,如果AlwasyOn的网络共享路径也配置在域服务器应该避免文件见证使用该共享路径,这涉及到了安全问题。AlwasyOn的网络共享路径只需要授予启动服务用户的所有权限即可。

 

二、读写分离

当使用两个节点后,读写分离的配置和三个节点会稍微有点区别,假设我现在只有DB01,DB02两个节点

1.Alwayson属性配置

注意:主角色中的连接这里和三个节点不一样,三个节点这里可以选择“仅允许读/写连接”,这里是能选择“允许所有连接”,否则其中一个节点无法访问后只读路由访问会失败(返回错误982)。

2.语句配置

复制代码

---建立read指针 - 在当前的primary上为每个副本建立副本对于的tcp连接ALTER AVAILABILITY GROUP [Alwayson22]MODIFY REPLICA ONN'db01' WITH(SECONDARY_ROLE (READ_ONLY_ROUTING_URL = N'TCP://db01.ag.com:1433'))ALTER AVAILABILITY GROUP [Alwayson22]MODIFY REPLICA ONN'db02' WITH(SECONDARY_ROLE (READ_ONLY_ROUTING_URL = N'TCP://db02.ag.com:1433'))----为每个可能的primary role配置对应的只读路由副本--list列表有优先级关系,排在前面的具有更高的优先级,当db02正常时只读路由只能到db02,如果db02故障了只读路由才能路由到DB01ALTER AVAILABILITY GROUP [Alwayson22]MODIFY REPLICA ONN'db01' WITH(PRIMARY_ROLE (READ_ONLY_ROUTING_LIST=('db02','db01')));ALTER AVAILABILITY GROUP [Alwayson22]MODIFY REPLICA ONN'db02' WITH(PRIMARY_ROLE (READ_ONLY_ROUTING_LIST=('db01','db02')));

复制代码

复制代码

--查询优先级关系SELECT  ar.replica_server_name ,
        rl.routing_priority ,
        ( SELECT    ar2.replica_server_name          FROM      sys.availability_read_only_routing_lists rl2                    JOIN sys.availability_replicas AS ar2 ON rl2.read_only_replica_id = ar2.replica_id          WHERE     rl.replica_id = rl2.replica_id                    AND rl.routing_priority = rl2.routing_priority                    AND rl.read_only_replica_id = rl2.read_only_replica_id
        ) AS 'read_only_replica_server_name'FROM    sys.availability_read_only_routing_lists rl        JOIN sys.availability_replicas AS ar ON rl.replica_id = ar.replica_id

复制代码

会发现配置只读路由列表这里和之前的三个节点有区别,我用绿色标识了出来;之前三个节点的时候这里用的是DB03。

三个节点:当DB01节点无法访问时,DB02节点变成主节点充当读写副本,DB03节点充当只读副本。

两个节点:当DB01节点无法访问时,DB02节点变成主节点即充当读写副本同时也充当只读副本。

当停止DB01的服务后仲裁会自动切换到DB02上来,且读写和只读连接都会连接到DB02上。这里就不做演示从下图也可以看到单节点DB02在线。







      本文转自zsdnr  51CTO博客,原文链接:http://blog.51cto.com/12942149/1949789,如需转载请自行联系原作者





相关文章
|
2月前
|
SQL 监控 关系型数据库
查寻MySQL或SQL Server的连接数,并配置超时时间和最大连接量
以上步骤提供了直观、实用且易于理解且执行的指导方针来监管和优化数据库服务器配置。务必记得,在做任何重要变更前备份相关配置文件,并确保理解每个参数对系统性能可能产生影响后再做出调节。
334 11
|
4月前
|
SQL XML Java
配置Spring框架以连接SQL Server数据库
最后,需要集成Spring配置到应用中,这通常在 `main`方法或者Spring Boot的应用配置类中通过加载XML配置或使用注解来实现。
415 0
|
10月前
|
SQL Oracle 关系型数据库
如何在 Oracle 中配置和使用 SQL Profiles 来优化查询性能?
在 Oracle 数据库中,SQL Profiles 是优化查询性能的工具,通过提供额外统计信息帮助生成更有效的执行计划。配置和使用步骤包括:1. 启用自动 SQL 调优;2. 手动创建 SQL Profile,涉及收集、执行调优任务、查看报告及应用建议;3. 验证效果;4. 使用 `DBA_SQL_PROFILES` 视图管理 Profile。
|
SQL XML Java
mybatis :sqlmapconfig.xml配置 ++++Mapper XML 文件(sql/insert/delete/update/select)(增删改查)用法
当然,这些仅是MyBatis功能的初步介绍。MyBatis还提供了高级特性,如动态SQL、类型处理器、插件等,可以进一步提供对数据库交互的强大支持和灵活性。希望上述内容对您理解MyBatis的基本操作有所帮助。在实际使用中,您可能还需要根据具体的业务要求调整和优化SQL语句和配置。
238 1
|
SQL BI 网络安全
SQL Server2014的安装与配置
SQL Server2014的安装与配置
659 0
|
SQL Java 数据库连接
idea中配置mybatis 映射文件模版及 mybatis plus 自定义sql
idea中配置mybatis 映射文件模版及 mybatis plus 自定义sql
517 3
|
SQL 存储 大数据
SQL 语言发展史简直太震撼啦!从诞生到现代数据处理,见证一场奇妙的演变之旅,快来感受!
【8月更文挑战第31天】SQL(结构化查询语言)自20世纪70年代由IBM研究员E.F. Codd提出以来,已成为现代数据处理不可或缺的一部分。它最初简化了层次和网状模型中复杂的存储与检索问题,通过基本的SELECT、FROM和WHERE关键字实现了数据查询。80年代,SQL在商业数据库中广泛应用,引入了GROUP BY、HAVING和ORDER BY等功能,增强了数据分析能力。90年代,互联网和企业信息化推动了SQL的进一步优化与扩展,支持分布式数据库和数据仓库等技术。
585 0
|
SQL 存储 关系型数据库
SQL安装实战:从零开始,一步步掌握SQL数据库的安装与配置
配置SQL数据库以优化性能 安装完成后,接下来的任务是对SQL数据库进行必要的配置,以确保其能够顺利运行并满足你的性能需求。以下是一些关键的配置步骤:
|
SQL 存储 关系型数据库
SQL安装指南:一步步教你如何安装并配置SQL数据库
展望未来,随着技术的不断进步和应用场景的不断拓展,SQL数据库将继续发挥重要作用。同时,我们也需要不断学习和掌握新的数据库技术和工具,以适应不断变化的市场需求和技术挑战。希望本文能为你提供一个良好的起点,帮助你在SQL数据库的学习和实践之路上取得更大的进步。
|
SQL 存储 文件存储
快速部署sqlserver AlwaysOn集群
【7月更文挑战第8天】快速部署SQL Server AlwaysOn集群概览: 1. 准备工作:确认硬件与软件兼容,操作系统一致,资源充足;各节点安装相同SQL Server版本;配置静态IP,保障网络稳定。 2. 创建WFC:安装集群功能,通过管理器创建集群,设定名称、IP及节点。 3. 配置共享存储:接入SAN/NAS,将其作为集群资源。 4. 启用AlwaysOn:在SQL Server中开启功能,创建可用性组,定义主辅副本,添加数据库,设置侦听器。 5. 测试验证:故障转移测试,检查数据同步与连接稳定性。 部署前需深入理解技术细节并测试。
910 0