Windows 数据库高可用性Sql Server AlwaysOn 有域配置与心得(一)

一、引言

随着企业业务的不断扩展和数据的不断增长,数据库的高可用性(HA)和灾难恢复(DR)变得尤为重要。AlwaysOn是SQL Server提供的一种高可用性和灾难恢复解决方案,它结合了故障转移群集、数据库镜像和日志传送等技术的优点,为数据库提供了更加灵活、高效和可靠的保障。本文是对本人的期末作业:Windows 数据库高可用性的配置详细步骤

二、AlwaysOn技术概述

AlwaysOn是SQL Server提供的一种可用性组技术,它支持一组用户数据库(称为“可用性数据库”)在多个SQL Server实例之间进行故障转移。AlwaysOn技术通过创建可用性组,将数据库同步到多个服务器上,当主服务器出现故障时,系统可以自动将工作负载转移到另一个服务器,从而实现高可用性。

AlwaysOn技术具有以下优点:

支持最多八个辅助数据库副本(包括一个主数据库副本),提供更高的数据冗余和可用性。支持同步提交和异步提交两种模式,以满足不同业务场景的需求。支持自动故障转移、计划的手动故障转移和强制的手动故障转移,提供灵活的故障转移策略。支持只读副本访问,实现读写分离,提高系统的可扩展性。提供用于避免页损坏的自动页修复功能,增强数据安全性。

 

三、数据库高可用性部署与配置

数据库高可用性的部署和配置包括:环境准备、创建Windows Server故障转移集群、启用AlwaysOn功能、创建可用性组、配置监听器,AlwaysOn实践应用。

 

(1)环境准备:我们的期末作业是在虚拟机实现的,如果你要看实战的话可以换一篇了。

虚拟机软件:我们使用的虚拟机软件是VMware(官网上下一个,然后第一次登入是要激活码的,去网上随便找一个激活码基本上都是可以用的,我大发慈心留一个:VC1R2-25ZEM-M85VZ-FDXGG-Y3KY0)

Windows系统:我们使用的是Windows server2019尽量选2014版本以上的(选Windows server后面配置故障转移集群等等方便一些ps:一开始我们使用的Windows10然后看网上攻略,傻傻的找不到服务器管理系统),不需要激活秘钥,要设置密码复杂一点,后面都用这个密码,可以去msnd下映像链接供上:https://msdn.itellyou.cn/

82818bacf4414ee88abf3061f4bba43c.png

 下好后去VMware新建虚拟机,这个映像文件选你刚刚下的文件,后面选默认的就可以了,(提前建三个文件夹,然后把三个虚拟机分别放里面)建三个虚拟机,一个当域控虚拟机名字:dc,两个当服务器分别为serve1,server2。都选桥接网络。ps:不建议使用克隆,非要使用得去找一个sysprep应用程序,勾选通用启动一下

d5155b2c6de447148ab462ab4f2a1c85.png

 配置主机名与ip地址:首先去回收站–>属性。修改主机名分别为dc,server1,server2

52515e9325c04869afdd92d2e85a638b.png

 右键右下角的网络修改ip4地址

dc:192.168.10.10

server1:192.168.10.11

server2:192.168.10.12

5079c79eb2f5445d8176b41e2282f6a4.png

 

然后把ip6关闭,关闭防火墙

c0fe2aca4ef84a7c85ee1bf77bf4bd4b.png

 因为服务器只有两个,仲裁机制的问题,我们需要接一个心跳网络:新建一个网络适配器,自定义网络网络并配置ip地址为:

servser1:192.168.10.100

server2:192.168.10.200

c18c2b11efef4d928ffdd76e520053f1.png

 域控:在dc的服务管理器里添加服务器角色–>添加域服务

bbe5a246cd9e47479dab3c966f1feb95.png

 下好后部署一下域控,域名后面要加.com名尽量不要太简单

8314c395b4cc4ad58df135d8536ff9c9.png

 工具里找到actibe directory用户和计算机里新建一个用户

053ca455eb304751a9f808b584d11e95.png

 然后把这个用户添加到domain administration组里

d9fae9bf8c334c0184bd543e521e4f93.png

b704369fe2904e4a869ca5257b67648a.png

 然后设为主要组

2f1f86e733a54df280621cfd16938bfb.png

 之后去改计算名那添加到域

c9c49317997c46e59a1961f650cbb3f5.png

 用户名写:(域名/你刚刚创建的用户名),密码:你刚刚创建的密码,域就添加完成了

e50eab656fa34960944b1cec65f11b26.png

 

然后是建共享磁盘:找到iscsi目标服务器勾选添加

b857693715ca4b28bb8e70d8ac8e4171.png

 然后你就能在文件和储存服务看到iscsi选项,然后在左边新建iscsi虚拟磁盘,名字随便取,大小按动态扩展

7bca5e2783164b45a8a8ccf3af51bf59.png

 访问服务器里添加两个心跳网络ip地址

d3e4c50585084e578c08502ba9d1dd50.png

 然后在服务器server1里启动iscsi发起程序

7ea85cb1b1bb46e39fe0c20f8d7828a3.png

 目标写你建虚拟磁盘的主机名

4f9af095c8854ca18fd1dc18d7581c4f.png

 磁盘管理,然后对磁盘1进行联机操作,然后初始化磁盘,新建一个简单卷,server2前面的步骤一样,后面只需要联机操作就可以

439c279b1f464a14909f5c274081d4e1.png

 

(2)创建Windows Server故障转移集群:添加角色里在功能界面找到故障转移群集两个服务器都要安装

f825793b31d641bbab869cba6a3372d8.png

 打开故障转移群集管理器

91b263dcf80344909b1ee7ce31a6b85a.png

 先做验证配置,然后server1创建群集,server2连上就可以

3b7a26eda4f54303b141d03cc9f32b98.png

 这里输入主机名就可以找到服务器

0349d78cdb7b4ebfb628765d4c67ea29.png

 只要没有错误就可以继续进行新建,这里去掉心跳线

a4f663329d6341c290b6fc0e82af6f7e.png

 (3)启用AlwaysOn功能:在每台服务器安装sql server与ssms你都要搞数据库高可用性了,安装一个数据库应该没问题的,把sql server和ssms安装包复制粘贴进去虚拟机就可以了(VMware提供的功能)然后在任务管理器的sql server属性里启用alwayson高可用组

8f8dedde83064a38a5e90974ebb4a98f.png

 后面就是建一个数据库:xx,然后要完整备份,完整备份放在c盘新建的文件:backup然后设置共享给所有人

bb8cac41f3024839a916b3471c811a92.png

 

(4)创建可用性组:在server1使用ssms连接到server1与server2,连接到2的时候可能会失败,等一会就好了(前提是你域控没出问题)然后新建可以性向导(向导操作简单一点)

c131ac006a8348859a711b287f34708d.png

 然后写可用组名字,选择数据库(如果你是完整备份就可以满足条件)

e4a328d2f46b4cfd861bc6041ae3aa70.png

 添加server2副本,然后全部勾选

b251dd68a08c4c9c845be673693ca2f6.png

 这里选刚刚创的共享文件地址

117ea74eeab7490895748cfb3194112f.png

 之后就完成向导了,右键高可用组可以看到属性,也可以进行故障转移(现在1是主服务器,故障转移后2变主服务器)

 3a1f39e7085e434d9b9476ce2b50a937.png

 

(5)配置监听器:添加侦听器

3441960425224dbdb8210d7fc1e829a2.png

 配置静态ip为192.168.10.150端口为1433

e06c8e3127974fddbf885618ca3559cd.png

 (6)AlwaysOn实践应用:首先要在服务器里下载.nte framework才能运行VS的应用程序(网上很容易找到安装包的),然后去文件里的bin–>debug里找到应用程序和app文件,复制粘贴入服务器。我们写了一个简单的登入注册界面进行实践(字符串连接地址的是刚刚配置的侦听器的ip:192.168.10.150)–先在server1里注册一个账号,然后去server2登入,成功后,我们进行模拟故障,直接把主服务器server1关机,然后去server2里打开应用程序注册和登入一个新账号

9f1fa379603b4828ad3abcfe4f5bc460.png

 

 

 

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值