sql server 2016 AlwaysOn实现无域高可用全教程

原文链接:https://blog.csdn.net/WSD_CSDN/article/details/90410208

一、简介

环境:小编使用的服务器是windows server 2016(系统服务器) + sql server 2016(数据库服务器)
(windows server 2016 + sql server 2016以上才可用无域高可用,windows server 2016 + sql server 2016下载地址http://msdn.itellyou.cn/

windows server 2016 下载

windows server 2016下载地址

sql server 2016 下载

sql server 2016 下载
下面进入主题吧!

ip地址

二、安装故障转移和.net3.5

主机名IP说明
win-138192.168.66.138服务器138,也就是节点138
win-139192.168.66.139服务器139,也就是节点139
mk-AlwaysOn192.168.66.137集群IP,虚拟的,自己随便写,同网段就行,后续会用到
mk-SQL192.168.66.140监听器IP,也是虚拟的,自己随便写

在服务器中添加角色和功能(两台计算机都要安装)

默认下一步,下一步,勾选NET Framework 3.5 功能故障转移群集,直到安装完成。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二.修改并加入域(两台计算机都要改)

在我的电脑中点击属性(也可以使用win+E进入文件夹,在此电脑中右键后点击属性)—>更改设置–>在弹出的窗口点击更改–>弹出的窗口点击其他–>最后点击确定(点击确定之后会重启电脑,点击立即重新启动)

在这里插入图片描述

修改HOST文件(两台计算机都要安装)

在文件夹中 C:\Windows\System32\drivers\etc 打开文件hosts,在hosts以笔记本或写字板方式打开,并进行新增和保存(保存不了的,把hosts文件复制到桌面后进行修改,修改完再覆盖C:\Windows\System32\drivers\etc中的hosts)
新增内容hosts(注意是自己的IP,请参考下面的表格图):

主机名IP说明
win-138192.168.66.138服务器138,也就是节点138
win-139192.168.66.139服务器139,也就是节点139
mk-AlwaysOn192.168.66.137集群IP,虚拟的
mk-SQL192.168.66.140监听器IP
<span style="color:#000000"><code>192.168.66.137 mk-AlwaysOn
192.168.66.138 win-138.gdmk01.cn
192.168.66.139 win-139.gdmk01.cn
192.168.66.140 mk-SQL
</code></span>
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

三、关闭防火墙(两台电脑执行)

关闭防火墙,要不然故障转移会有问题

在这里插入图片描述

设置允许应用或功能通过windows防火墙

还是在刚刚的防火墙中点击设置允许应用或功能通过windows防火墙,设置以下几项
在这里插入图片描述
在这里插入图片描述

四、修改DNS(两台电脑执行)

在右下角网络中打开internet网络,设置DNS服务器

在这里插入图片描述

五、新建故障转移(任意一台电脑执行)

打开PoserShell运行以下代码,注意修改成自己的IP跟计算机名(参考上面的表格)

在这里插入图片描述

<span style="color:#000000"><code>New-Cluster -Name mk-AlwaysOn -Node win-138,win-139 -StaticAddress 192.168.66.137 -AdministrativeAccessPoint DNS
</code></span>
  • 1

在这里插入图片描述

六、验证故障转移是否成功(任意一台电脑关机)

最好测试两台电脑(也可跳过不做这一步)

如WIN-139关机(有人问怎么打开这个界面?在服务器管理器–>工具–>故障转移群集–>右键故障转移群集管理器–>连接到群集(N)–>输入集群的名称,如:mk-alwayson)

在这里插入图片描述

恭喜各位故障转移已全部搞定,接下来就是sql server 2016的高可用性安装了

七、安装sql server 2016(两台电脑都要装)

下载地址:http://msdn.itellyou.cn/ 上面有提过的
在这里插入图片描述

安装的话就不介绍了,不懂的小朋友请参考特别注意安装的功能和目录要一致,否则高可用会失败https://jingyan.baidu.com/article/948f592434b407d80ef5f97d.html

八、设置共享文件

在C盘中新建一个gdmk文件夹
设置共享人为Everyone,修改权限级别为读取/写入
在这里插入图片描述

九、在配置管理器中启用高可用和修改账户名登录

1.点击SQL Server服务,再点击【SQL Server(MS…】
在这里插入图片描述

在这里插入图片描述
2.勾选“启用AlwaysOn可用性组(E)”
在这里插入图片描述
3.选择【登录】,设置电脑的账号名、密码(电脑开机的密码)注意注意:两台电脑的开机密码一定要一样的!!!
在这里插入图片描述

十、在数据库里面安装证书(特别特别要小心)

1.这是sql的客户端下载地址:
SQL Server Management Studio (SSMS) 下载地址:https://docs.microsoft.com/zh-cn/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-2017
2.在sql的客户端连接两台电脑装的数据库,用sa用户登录
3.使用客户端去访问两台虚拟机的服务器。(可以在物理机里访问,物理机连接两台服务器的数据库),,注意:一定先要在两台虚拟机备份,快照,以防坏了不好恢复。步骤如下:
在这里插入图片描述
3.新建查询,执行以下语句:

节点1:WIN-138(数据库)

<span style="color:#000000"><code>USE master; 
GO
--创建主密钥
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'Abc123'; 
--创建证书  这里有两个"CERT1",建议每台机器都改成不同的名称以作区分
CREATE CERTIFICATE CERT1 WITH SUBJECT = 'CERT1', START_DATE = '2017-01-01',EXPIRY_DATE = '2099-12-30';
--把刚才创建的证书备份到文件 这里也有两个CERT1要改
BACKUP CERTIFICATE CERT1 TO FILE = 'C:\gdmk\CERT1.cer';
--创建终结点,设为证书验证 这里第二行有1个CERT1要改
CREATE ENDPOINT [group0_endpoint] AUTHORIZATION [sa] STATE=STARTED AS TCP (LISTENER_PORT = 5022, LISTENER_IP = ALL) 
 FOR DATA_MIRRORING (ROLE = ALL,AUTHENTICATION = CERTIFICATE CERT1, ENCRYPTION = REQUIRED ALGORITHM AES) 
GO
</code></span>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

节点2:WIN-139

<span style="color:#000000"><code>USE master; 
GO
--创建主密钥
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'Abc123'; 
--创建证书  这里有两个"CERT1",建议每台机器都改成不同的名称以作区分
CREATE CERTIFICATE CERT2 WITH SUBJECT = 'CERT2', START_DATE = '2017-01-01',EXPIRY_DATE = '2099-12-30';
--把刚才创建的证书备份到文件 这里也有两个CERT1要改
BACKUP CERTIFICATE CERT2 TO FILE = 'C:\gdmk\CERT2.cer';
--创建终结点,设为证书验证 这里第二行有1个CERT1要改
CREATE ENDPOINT [group0_endpoint] AUTHORIZATION [sa] STATE=STARTED AS TCP (LISTENER_PORT = 5022, LISTENER_IP = ALL) 
 FOR DATA_MIRRORING (ROLE = ALL,AUTHENTICATION = CERTIFICATE CERT2, ENCRYPTION = REQUIRED ALGORITHM AES) 
GO
</code></span>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

4.证书通过共享文件互相复制粘贴,共享文件地址:win-138\gdmk
在这里插入图片描述5.执行完上一步,接着运行win-138,win-139里面的内容

节点1:WIN-138

<span style="color:#000000"><code> --载入其它节点证书
--不用载入自己的证书!
--不用载入自己的证书!
--不用载入自己的证书!
--CREATE CERTIFICATE CERT1 FROM FILE = 'C:\gdmk\CERT1.cer'; 
CREATE CERTIFICATE CERT2 FROM FILE = 'C:\gdmk\CERT2.cer'; 
GO 
</code></span>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

节点2:WIN-139

<span style="color:#000000"><code>--载入其它节点证书
--不用载入自己的证书!
--不用载入自己的证书!
--不用载入自己的证书!
CREATE CERTIFICATE CERT1 FROM FILE = 'C:\gdmk\CERT1.cer'; 
--CREATE CERTIFICATE CERT2 FROM FILE = 'C:\gdmk\CERT2.cer'; 
GO
</code></span>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

十、新建可用性组

数据库先备份
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述这里添加副本辅助角色选择为:win-139
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
最后一直下一步,直到完成!
在这里插入图片描述
大功告功!
这时测试下,可以让其中一台电脑故障(关机也可以),这时会自动转移到另外一台数据库上,在另外一台数据库里做增删改查等操作,但凡这台电脑开机,正常运行了,数据也会自动同步到这台电脑数据库里,这台电脑挂了,另外一台电脑的数据库依然接着继续运行,保证数据一切正常。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 《深入SQL Server 2016可用性》是一本关于SQL Server 2016可用性技术的指南。该书从理论和实践两个方面详细介绍了SQL Server 2016中的可用性功能和实现原理。 首先,该书从可用性的概念和重要性入手,介绍了SQL Server 2016中的可用性组件,如故障转移群集、AlwaysOn可用性组以及数据库镜像等。通过详细的原理解析和实际案例分析,读者可以面了解SQL Server 2016可用性技术的基本概念和工作原理。 其次,该书还详细讲解了如何在SQL Server 2016中配置和管理可用性组件。读者可以学习到如何创建故障转移群集、配置AlwaysOn可用性组,以及实现数据库镜像等可用性方案。此外,该书还介绍了如何进行故障监控和故障恢复,以提系统的可用性和可靠性。 此外,该书还介绍了SQL Server 2016中的其他可用性相关功能,如日志传送、延迟复制和自动故障检测等。读者可以了解到这些功能的作用和使用方法,从而更好地实现SQL Server 2016的可用性架构。 总之,《深入SQL Server 2016可用性》是一本面深入的SQL Server 2016可用性技术指南。通过阅读本书,读者可以系统地学习和掌握SQL Server 2016中的可用性技术,提系统的可用性和容错性,确保数据库系统的稳定运行。同时,该书还提供了大量的实际案例和操作步骤,有助于读者快速上手和实践。 ### 回答2: SQL Server 2016是由微软公司开发的一款关系数据库管理系统。可用性是指系统在运行过程中,能够持续地提供服务,即使部分组件或服务器发生故障也能够保持系统的可用性和稳定性。 深入了解SQL Server 2016可用性的PDF,将会涵盖以下内容: 1. 可用性组:可用性组是SQL Server 2016中实现可用性的关键概念。它由多个数据库组成,可在不同的服务器上运行,形成一个逻辑组。通过在可用性组之间进行自动故障转移,当主数据库发生故障时,可以无缝地切换到备用数据库。这种自动故障转移确保了系统的连续性和可用性。 2. 故障转移集群:SQL Server 2016引入了故障转移集群的概念,可以提供更可用性。故障转移集群是一组服务器节点,它们共享存储,当一个节点发生故障时,其他节点可以接管并继续提供服务。它还具备自动故障转移的功能,可以在没有用户干预的情况下,实现数据库的无缝切换。 3. AlwaysOn可用性组:AlwaysOn可用性组是SQL Server 2016中实现可用性的一种方法。它允许将多个数据库组成一个可用性组,通过自动故障转移实现对数据库的保护。同时,AlwaysOn可用性组还支持读取负载均衡,可以将读取操作分散到不同的节点上,提系统的性能和吞吐量。 4. 云集成:SQL Server 2016可用性还提供了对云计算的集成支持。通过使用云服务,可以将数据库备份和故障转移等操作移到云端,实现可用性的同时,减少了本地服务器的维护和管理成本。 总之,深入了解SQL Server 2016可用性的PDF将会帮助用户掌握SQL Server 2016的可用性架构和功能,以及如何配置和管理可用性组和故障转移集群,从而确保系统的连续性和可用性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值