SQL Server 高可用(always on)配置指南之数据库侦听器及高可用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server 高可用(always on)配置指南之数据库侦听器及高可用相关的知识,希望对你有一定的参考价值。

1.简介

1、参考SQL Server 高可用(always on)配置指南之域(AD)环境搭建    ​​https://blog.51cto.com/waringid/5851856​​ 完成域控服务器(Domain Control ,以下简称DC)

2、参考SQL Server 高可用(always on)配置指南之节点配置   ​​https://blog.51cto.com/waringid/5851970​​ 完成2个节点服务器的配置。

3、参考SQL Server 高可用(always on)配置指南之搭建故障转移群集  ​​https://blog.51cto.com/waringid/5854694​​ 完成故障转移群集搭建

4、参考SQL Server 高可用(always on)配置指南之数据库安装 ​​https://blog.51cto.com/waringid/5854730​​ 完成数据库软件的安装配置

​1.1. Alwayson 可用性组要求

加入到AlwaysOn可用性组的数据库必须符合下面要求

  1. 数据库的恢复模式必须是“完整”恢复模式
  2. 数据库已进行了一次完整备份
  3. 需要是用户库,系统库不能加入可用性组
  4. 数据库可以读写,只读库不能加入到可用性组
  5. 数据库处于多用户模式
  6. 数据库没有使用AUTO_CLOSE
  7. 不属于任何其他的可用性组
  8. 数据库没有配置数据库镜像

一个可用性组最大支持100个数据库

2.准备测试数据

1、test-node1使用自行初始化数据库的方式,先新建一个测试库和测试表并插入一些测试数据,对数据库做一个完整备份和日志备份

SQL

2、把完整备份文件和日志备份文件搬到test-node2机器上依次还原完整数据库和数据库日志。(注意还原时选项框中要点选restore with norecovery)

SQL

3.配置可用性组

1、 在“Alwayson高可用性”节点上右键选择“新建可用性组向导

SQL

2、点击“下一步”,输入一个从未使用过的高可用性组名称 testAG

SQL

3、点击下一步,选择要添加的数据库

SQL

4、 点击“下一步”,使用添加副本将其他节点添加到可用性组中,并选择自动故障转移节点和同步提交节点

SQL

5、将辅助副本设置为可读,能够自动故障转移,同步提交模式

SQL

6、“端点”tab页面设置端点

SQL

注意:端点URL使用IP的方式,不要用FQDN长名的方式,因为服务器通常会有两个网卡,一个public网卡,一个private网卡,端点建议使用private网卡地址

这样在端点直接传送的数据就会经由private网卡来传送,使用FQDN长名的方式是不能保证端点数据通过private网卡来传送

7、 “备份首选项”和“侦听器”不需要设置,保持默认就行,可用性侦听器我们后面再添加,可以直接点击“下一步”

8、选择初始数据同步,这里选择“仅联接”模式

SQL

9、点击“下一步”来验证配置,对应侦听器配置警告可以忽略,后期来添加侦听器

因为使用的是“仅联接”数据库初始化方式,验证跳过像可用磁盘空间这样的检查

10、点击“下一步”来检查并确认之前的配置信息,若无误,点击“完成”。另外,此处也可保存建立可用性组脚本,以便分步诊断故障之用。

11、所有摘要均成功完成,显示绿色对勾。如果出现黄色警告,则需进行进一步判断是否成功。若出现红色错误,表示AG创建不成功

SQL

SQL

4.可用性组状态检测

1、查看服务器和数据库的变化。主副本数据库变为已同步

辅助副本这时候是可读的,在主副本上对Table_test表做的更改都能同步到辅助副本上的Table_test表

此时打开辅助副本的表可能会显示如下信息,无法打开

SQL

只需要在可用性组属性出打开可读性副本即可

SQL

2、检查故障转移集群管理器,可用性组变为一个集群角色

SQL

3、显示面板可以显示可用性面板

SQL

4.配置侦听器

1、在创建可用性组后,在“可用性组侦听器”上右键添加侦听器来创建侦听器,选择静态IP的网络模式(尽量不要选择DHCP网络模式)

SQL

2、输入一个从未使用过的名称(该名称将被用来创建网络名称资源)和访问端口

SQL

SQL

3、域控的DNS管理器上会自动注册一条A记录,AD的Computers容器里会自动添加一个故障转移集群虚拟网络名称账户

SQL

SQL

4、故障转移集群管理器里的角色节点,可以看到客户端访问名称和IP地址,客户端通过这个访问名称进行访问数据库

SQL

5、可以使用侦听器名称进行登录SQL Server,也可以通过侦听器地址来登陆

SQL

SQL

5.故障转移测试

1、使用侦听器名称来登录SQL Server,查看当前是在主副本是在哪个机器

SQL

2、手动故障转移测试

SQL

SQL

3、连接到 test-node2这台辅助副本机器

SQL

SQL

SQL

SQL

SQL

4、查询确认

SQL













以上是关于SQL Server 高可用(always on)配置指南之数据库侦听器及高可用的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server 高可用(always on)配置指南之节点配置

SQL Server2019配置always on高可用图文步骤

SQL Server2019配置always on高可用图文步骤

SQL SERVER ALWAYS ON 之 添加新的同步数据库

SQL Server 安装好后 Always On群组配置

构建高可用的SQL群集-SQL Always ON