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

时间:2022-11-17 11:28:27

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 Server 高可用(always on)配置指南之数据库侦听器及高可用

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

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

3.配置可用性组

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

4.可用性组状态检测

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

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

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

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

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

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

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

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

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

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

4.配置侦听器

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

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

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

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

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

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

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

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

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

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

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

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

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

5.故障转移测试

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

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

2、手动故障转移测试

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

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

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

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

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

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

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

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

4、查询确认

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