SQL Server高可用性——AlwaysOn搭建

端口135 137 139 445 5022 1433要开(不管他防火墙开没开)!!!!!

ip规划好!!!!

hostname记得提前改好!!!

一.搭建域(win2008只要选dns就行,win2012还要选AD域服务

安装服务如果不行,拷贝iso上去解压,选定C:\iso\sources\sxs路径即可

1. 开始菜单-->管理工具-->服务器管理器,添加角色

2.下一步

3.勾选DNS服务,下一步

4.下一步

5.安装

6.安装完成,关闭

7. 开始菜单-->运行-->输入命令“dcpromo”点击确定按钮

8.安装开始

9.下一步

10.下一步

11.勾选“在新林中新建域”,下一步

12.输入想创建的域名,下一步

13.检测重复名

14.选择windows server 2008 r2,下一步

15. 点击下一步按钮,如果最初没有安装DNS服务器,此处可以勾选并安装

16.检测DNS配置

17.选择是

18.下一步

19.输入密码(我测试用123456),下一步

20.(我测试用的密码过于简单)

21.重新写密码(Hzmc321#),下一步

22.下一步

23.正在安装组策略管理控制台

24.完成

25.重启

二.添加域账号

1.服务器管理器,角色,域服务,用户和计算机,我的域名,users(windows server2012后是在AD用户与计算机里)

2.右键添加,用户,填写姓和用户登录名(统一),下一步

3.密码(Hzmc321#),密码用不过期,下一步

4.创建完成

5.给用户添加权限Administrators(管理员)、Domain Admins(域管理员)、Domain Computers(域计算机?)、Domain Controllers(域控制器)、Domain Users(域使用者),步骤,右键账号,属性,隶属于,高级,立即查找,添加

6. 进入SQL Server Management Studio,实例,安全性,右键登录名,新建登录名,常规,搜索,高级,,立即查询,选择域用户,确定

7.服务器角色,勾选sysadmin,

8.如果想要哪个数据库的最大权限,用户映射,选择数据库前的映射,勾选上下面的db_owner,确定

三.把电脑添加进域

域控的网卡,ipv6关掉,默认网关不要填写

节点

1.查看搭建域的机子的网络属性

2.修改想要加入域的机子的网络属性,把DNS改成上个机子的IP地址

3.右键计算机,属性,更改设置,更改,勾选域,输入域名

4.输入账号密码,确定--------重启

5.应该完成结束了 (不过我不知为什么原因网络路径找不到 ,无图)

四.故障转移群集

1.功能里添加故障转移群集和.NET3.5.1

2.2台都装好故障转移群集后,一台机子用域账号(dcadmin)登陆,另一台普通(administrator)登陆

3.打开故障转移群集管理器,验证配置

4.下一步

5.浏览,添加要进群集的机子,不要域控进来

6.下一步

7.下一步

8.下一步

9.查看下报告,有问题解决,没问题点完成

10.创建群集,下一步

11.下一步

12.群集VIP(192.168.36.170),名称SQLDEMO,下一步

13.下一步勾选将所有符合条件的存储添加到群集)

14.看报告,完成

15.完成故障转移群集搭建

五.仲裁

1.创建一个共享文件夹(SQL Server 2014共享文件夹不能放在结点上),everyone完全控制和DCADMIN域用户读写权限

2.如图

3.下一步

4.2008选第三个,2012选第二个,下一步

5.把共享文件夹的路径写进去,下一步

6.下一步

7.完成

8.完成

六.AlwaysOn搭建

1.用administrator登陆2台机子

2.添加.NET3.5功能

3.2台机子都装上SQL Server2012,不要选择SQL Server故障转移集群安装,单机安装就行

4.安装完成

5.安装SQL Server 2012 sp1补丁

6.

7.注销,用域用户登陆

8.服务,代理

9.位置选择域

10.添加dcadmin

11.输入域账号的密码,确定

12.重启代理服务

13.SQL Server也同样------------断开服务1

14.完成

15.另一个节点做一样

16.用sa账号登陆2个结点的SQL Server

17.安全性,登录名,新建登录名,搜索,位置改为域,再高级,立即查询,添加dcadmin账号

18.登录名,服务器角色勾选上sysadmin,并且在另一台上也同样操作

19.重新用windows身份登陆,

20.SQL Server服务管理器,

21.选择SQL Server(M。。。。。。)右键属性,AlwaysOn高可用性,勾选启动

22.重启SQL Server服务,在SSMS中,右键实例,属性,可看到,启用HADR为True----------重启服务第二次

23. 在其中一个集群节点的SQL Server中验证各节点的投票数 ,在其中一个集群节点的SQL Server上执行使用下面SQL语句:

SELECT * FROM  sys.dm_hadr_cluster_members;

SELECT * FROM SYS.[dm_hadr_cluster]

24.在1结点输入下面命令创建test数据库以及test1表

CREATE DATABASE [test]

USE [test]

CREATE TABLE [test1]([id] INT,[name] VARCHAR(100))

INSERT INTO [test1] SELECT 1,'test'

25.再将下面这段与备份一起使用

DECLARE @CurrentTime VARCHAR(50), @FileName VARCHAR(200)

SET @CurrentTime = REPLACE(REPLACE(REPLACE(CONVERT(VARCHAR, GETDATE(), 120 ),'-','_'),' ','_'),':','')

26.备份test数据库完整备份

SET @FileName = 'c:\DBBackup\test_FullBackup_' + @CurrentTime+'.bak'

BACKUP DATABASE [test]

TO DISK=@FileName WITH FORMAT ,COMPRESSION

27.备份test数据库日志备份

SET @FileName = 'c:\DBBackup\test_logBackup_' + @CurrentTime+'.bak'

BACKUP log [test]

TO DISK=@FileName WITH FORMAT ,COMPRESSION

28.备份完成

29.在还原的服务器上执行这2段进行还原(改好地址以及备份名)

USE [master]

RESTORE DATABASE [test] FROM DISK = N'C:\DBBackup\test_FullBackup_2017_11_29_144348.bak' WITH  FILE = 1,

MOVE N'test' TO N'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\test.mdf',

MOVE N'test_log' TO N'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\test_log.ldf',

NOUNLOAD,NORECOVERY,  REPLACE,  STATS = 5

GO

USE [master]

RESTORE DATABASE [test] FROM  DISK = N'C:\DBBackup\test_logBackup_2017_11_29_144348.bak' WITH  FILE = 1,

NOUNLOAD,NORECOVERY,  REPLACE,  STATS = 5

GO

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

1)数据库的恢复模式必须是完整恢复模式

2)数据库已进行了一次完整备份

3)需要是用户库,系统库不能加入可用性组

4)数据库可以读写,只读库不能加入到可用性组

5)数据库处于多用户模式

6)数据库没有使用AUTO_CLOSE

7)不属于任何其他的可用性组

8)数据库没有配置数据库镜像

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

29.回到主服务器,右键AlwaysOn高可用性,新建,下一步

30.输入组名,下一步

31.选择库,下一步

32.添加副本,

33.选择自动故障转移,辅助副本设置可读

34.端点,下一步,确定

35.选择仅连接

36.忽略侦听器的警告,后面再配置,下一步

 如果最后一步一直运行,好久之后报错,可能是5022端口没开

37.完成

38.完成,但又警告(待定未知是否正确)

39.回到辅助服务器查看,数据库已同步

40.主服务器修改数据,再去辅助服务器查看,数据页修改了,确认数据已经同步

41.查看故障转移群集管理器,看到可用性组变成了一个群集角色

42.AlwaysOn,可用性组,显示面板

43.点击

44.AlwaysOn高可用性,可用性组,右键可用性组侦听器,添加侦听器

45.选静态IP模式,输入名称和端口号(应该是空的端口都可以),添加IP网络(地址貌似是随意的)

46.创建成功

47.在域控的DNS管理器上可以看到侦听器,在域用户和计算机中也可以看到侦听器,故障转移群集中也看的到侦听器

七.手动故障转移

1.AlwaysOn高可用性,可用性组,选择好组,右键故障转移

2.下一步

3.下一步

4.连接,下一步

5.完成

6.完成,转移成功

  • 43
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
SQL Server 2019 AlwaysOn是一种高可用性和灾备性解决方案,它提供了对数据库级别故障和服务器级别故障的保护。SQL Server 2019 AlwaysOn环境包括主要和辅助副本,它们之间保持数据同步,并且自动切换到备用副本,以确保持续的可用性和高性能。 在SQL Server 2019中,配置AlwaysOn组需要满足以下要求:Windows Server 2008 R2 或更高版本和SQL Server 2012或更高版本,已安装.NET Framework 3.5.1或更高版本,同时需要开启数据库和备份加速设备(Database and Backup Accelerators)以保证数据传输的速度。配置AlwaysOn同步副本,必须首先在主服务器上设置主数据库,并启用AlwaysOn功能,然后在辅助服务器上建立次要数据库和辅助副本,并通过配置数据库镜像和备份策略来同步主数据库的数据和日志。 在SQL Server 2019 AlwaysOn环境中,还需要进行预配容错配对、监控器和检查点等配置,以确保在主、辅助服务器配置发生故障时,AlwaysOn环境能够及时响应,并切换到备用副本,保证数据库可用性。此外,还需要制定备份和恢复策略,进行周期性备份和检查,以预防数据丢失和系统故障。 总之,SQL Server 2019 AlwaysOn是一种高可用性、容错性强的解决方案,在企业级应用中得到广泛使用。在搭建过程中,需要注意整体规划、硬件要求、数据传输速度等因素,并进行适当的配置和维护,以保证系统的可用性和数据的完整性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汪灵骅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值