Sql Server 2017主从配置之:AlwaysOn高可用

2023-12-06 19:04

本文主要是介绍Sql Server 2017主从配置之:AlwaysOn高可用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

AlwaysOn高可用功能,真正实现了数据库的灾备切换、高可用。

AlwaysOn通过Windows Server故障转移群集,部署高可用数据库组。

  • 在故障转移群集基础上完成部署
  • 读写分离,只读负载平衡
  • 最多3个写入节点实现故障转移
  • 最多3个数据实时同步节点

环境准备

两台服务器,配置都是8g2核,50g硬盘,操作系统版本Windows Server 2019 Datacenter

  • 域服务器:adc,192.168.56.120
  • 服务器1:server1:,192.168.56.121
  • 服务器2:server2,192.168.56.122

本人使用虚拟机做模拟配置,在虚拟机操作系统上做如下配置

  • 虚拟机配置两张网卡,以便和主机通讯

  • 虚拟机启动远程桌面 ,右键左下角win图标-系统-远程桌面,点击启用

  • 为方便测试,关闭系统防火墙,控制面板\系统和安全\Windows Defender 防火墙\自定义设置

  • 安装Sql Server 2017企业版,个人的Express版本不支持事务日志复制

  • 安装SSMS 19.2版本

前置条件

  • 域环境部署完成
  • 故障转移群集部署完成

Sql Server启用AlwaysOn高可用

打开 “Sql Server 2017 配置管理器”,右键SQL Server服务属性,启用AlwaysOn 可用性组,并修改服务登录账户(改成Administrator),然后重启服

在这里插入图片描述
在这里插入图片描述

注意:两台服务器要做同样的操作

打开SQL Server Management Studio,链接数据库。

1、创建共享文件夹,并备份测试库

Always On高可用性的先决条件是同步的数据库需要做一次完整的备份!

1)创建测试数据库test
2)创建共享文件夹c:\backup
3)完整备份一次test库到c:\backup目录
在这里插入图片描述

在这里插入图片描述

2、创建AlwaysOn高可用组

右键AlwaysOn高可用性-可用性组,点击“新建…”,输入组名称,点击下一步,勾选测试数据库“test”
在这里插入图片描述
在这里插入图片描述
点击添加副本,把server2添加进来,默认就是辅助库
在这里插入图片描述
勾选自动故障转移,把可读辅助副本改成是
在这里插入图片描述
切换到端点选项,把端点URL都改成ip地址访问
在这里插入图片描述

下一步,选择完整的日志备份,并选择前面创建的共享文件夹\SERVER1\backup,然后下一步,直到配置完成
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

至此,AlwaysOn高可用,主从同步的功能已经配置完成!server1上显示高可用组“test (主要)”,server2上显示高可用组“test (辅助)”

在这里插入图片描述

在这里插入图片描述

可以测试一下在主库insert一条记录,在从是否可以立即查询到。

3、数据库同步测试

在主库中创建一张表,并插入两条数据,在从库中可以实时查到!在这里插入图片描述
在这里插入图片描述
从库删除数据测试,从库是只读库,所以删除失败!
在这里插入图片描述

4、故障转移

1)手动故障转移

在主库的alwaysOn上面右键,选择“故障转移”,下一步链接到辅助库服务器,下一步确定就可以转移,转移后,主库就变成从库了,从库就变成主库了

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

2)自动故障转移

当主库服务不可用时,从库会自动变成主库

5、配置监听器,实现故障转移时程序高可用

为了在群集主备节点切换的时候,应用程序不需要修改动数据库链接ip地址,我们需要创建一个监听器,应用程序只要链接监听器就可以,这样在主备切换节点切换的时候,监听器会自动路由的新的主节点上,应用程序无须做任何修改。

1)右键高可用组监听器,新建监听器。
2)给监听器配置固定ip,端口使用默认1433,随便输入一个名字,比如“alwayson”,点击确定!

注意:这里需要域环境支持

在这里插入图片描述
添加成功后,会在域控服务器中添加一个虚拟主机alwayson

可以看见之前创建的群集,同样有一条记录 sqlcluster
在这里插入图片描述
打开DNS管理器,同样会自动创建一条记录alwayson

可以看见之前创建的群集,同样有一条记录 sqlcluster

在这里插入图片描述

这篇关于Sql Server 2017主从配置之:AlwaysOn高可用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/462948

相关文章

Mysql虚拟列的使用场景

《Mysql虚拟列的使用场景》MySQL虚拟列是一种在查询时动态生成的特殊列,它不占用存储空间,可以提高查询效率和数据处理便利性,本文给大家介绍Mysql虚拟列的相关知识,感兴趣的朋友一起看看吧... 目录1. 介绍mysql虚拟列1.1 定义和作用1.2 虚拟列与普通列的区别2. MySQL虚拟列的类型2

Window Server创建2台服务器的故障转移群集的图文教程

《WindowServer创建2台服务器的故障转移群集的图文教程》本文主要介绍了在WindowsServer系统上创建一个包含两台成员服务器的故障转移群集,文中通过图文示例介绍的非常详细,对大家的... 目录一、 准备条件二、在ServerB安装故障转移群集三、在ServerC安装故障转移群集,操作与Ser

mysql数据库分区的使用

《mysql数据库分区的使用》MySQL分区技术通过将大表分割成多个较小片段,提高查询性能、管理效率和数据存储效率,本文就来介绍一下mysql数据库分区的使用,感兴趣的可以了解一下... 目录【一】分区的基本概念【1】物理存储与逻辑分割【2】查询性能提升【3】数据管理与维护【4】扩展性与并行处理【二】分区的

windos server2022的配置故障转移服务的图文教程

《windosserver2022的配置故障转移服务的图文教程》本文主要介绍了windosserver2022的配置故障转移服务的图文教程,以确保服务和应用程序的连续性和可用性,文中通过图文介绍的非... 目录准备环境:步骤故障转移群集是 Windows Server 2022 中提供的一种功能,用于在多个

windos server2022里的DFS配置的实现

《windosserver2022里的DFS配置的实现》DFS是WindowsServer操作系统提供的一种功能,用于在多台服务器上集中管理共享文件夹和文件的分布式存储解决方案,本文就来介绍一下wi... 目录什么是DFS?优势:应用场景:DFS配置步骤什么是DFS?DFS指的是分布式文件系统(Distr

MySQL中时区参数time_zone解读

《MySQL中时区参数time_zone解读》MySQL时区参数time_zone用于控制系统函数和字段的DEFAULTCURRENT_TIMESTAMP属性,修改时区可能会影响timestamp类型... 目录前言1.时区参数影响2.如何设置3.字段类型选择总结前言mysql 时区参数 time_zon

Python MySQL如何通过Binlog获取变更记录恢复数据

《PythonMySQL如何通过Binlog获取变更记录恢复数据》本文介绍了如何使用Python和pymysqlreplication库通过MySQL的二进制日志(Binlog)获取数据库的变更记录... 目录python mysql通过Binlog获取变更记录恢复数据1.安装pymysqlreplicat

使用SQL语言查询多个Excel表格的操作方法

《使用SQL语言查询多个Excel表格的操作方法》本文介绍了如何使用SQL语言查询多个Excel表格,通过将所有Excel表格放入一个.xlsx文件中,并使用pandas和pandasql库进行读取和... 目录如何用SQL语言查询多个Excel表格如何使用sql查询excel内容1. 简介2. 实现思路3

关于Maven中pom.xml文件配置详解

《关于Maven中pom.xml文件配置详解》pom.xml是Maven项目的核心配置文件,它描述了项目的结构、依赖关系、构建配置等信息,通过合理配置pom.xml,可以提高项目的可维护性和构建效率... 目录1. POM文件的基本结构1.1 项目基本信息2. 项目属性2.1 引用属性3. 项目依赖4. 构

龙蜥操作系统Anolis OS-23.x安装配置图解教程(保姆级)

《龙蜥操作系统AnolisOS-23.x安装配置图解教程(保姆级)》:本文主要介绍了安装和配置AnolisOS23.2系统,包括分区、软件选择、设置root密码、网络配置、主机名设置和禁用SELinux的步骤,详细内容请阅读本文,希望能对你有所帮助... ‌AnolisOS‌是由阿里云推出的开源操作系统,旨