Sql server 2016 Always on 实现无域高可用
Sql server 2016 Always on 实现无域高可用
上一篇:sql server 2016 Always on 无域部署教程 使用三台服务器组成了sql server 高可用,但是基于成本考虑很多情况下我们只有两台服务器,今天就来测试下用两台服务器来组建sql server 高可用。
一、环境准备
①、服务器及IP规划
主机名 | IP地址 | 描述 |
---|---|---|
sql3.yishoe.com | 192.168.6.53 | 数据库 |
sql4.yishoe.com | 192.168.6.54 | 数据库 |
win-cluster | 192.168.6.56 | 集群侦听IP |
sqlcluster | 192.168.6.57 | sql 高可用侦听IP |
②、设置集群节点主机名,每个节点都需要设置
修改hosts文件,文件路径:C:\Windows\System32\drivers\etc
192.168.6.53 sql3.yishoe.com
192.168.6.54 sql4.yishoe.com
192.168.6.56 win-cluster.yishoe.com
192.168.6.57 sqlcluster.yishoe.com
直至可以使用主机名互相ping通
③、防火墙放行
注:两台服务器都需要放行
3.1、开启ICMP回显已检测服务器是否可以ping通
3.2、放行1433(Sql Server数据库端口)/5022(数据库镜像端口)
3.3、开启WMI、及远程相关应用和功能防火墙放行。(生产环境不建议关闭防火墙)
回显开启,方便测试服务器是否通达
故障转移集群需要允许通过防火墙
④、安装Windows Failover Cluster Feature(win 故障转移集群)
注:两台服务器都需要安装
⑤、安装sql server
注:两台服务器单独安装
二、创建Win 故障转移集群
①、使用powershell创建故障转移集群
管理员启动powershell
New-Cluster –Name win-cluster -Node sql3.yishoe.com,sql4.yishoe.com -AdministrativeAccessPoint DNS -StaticAddress 192.168.6.56
创建完成
–获取集群名
Get-Cluster
–群集详情
Get-ClusterResource
②、验证集群高可用
先ping一下试试
管理故障转移集群
在服务器管理器–>工具–>故障转移群集–>右键故障转移群集管理器–>连接到群集(N)–>输入集群的名称,如:win-cluster
注:故障转移集群名称必须能ping通,能解析。
我们关闭了一台服务器
将关闭的服务器重新启动
集群恢复正常
三、配置Sql Server 2016 Alwayson
①、sql server 启用always on
注:两台sql server 服务器都需要启用
启用后需要重启下sql server服务
②、sql server 启动用户
百度到的文章都说需要启用单独的统一的用户启动,我这里就是用系统NT Service 用户启动
③、新建一共享文件夹用户
只给administrator 权限
在另外一台服务器测试访问没问题
④、为数据库通信创建证书
注:先两个节点分别执行step1生产证书后,将sql3服务器生产的证书copy到sql4服务器指定目录下(C:\software\cerficates)。
然后再执行step2、step3两个步骤!
sql3 服务器执行
--step1
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '*********'
--创建主密钥
CREATE CERTIFICATE cer_alwayson_063
WITH SUBJECT='alwayson 063 local certificate',
EXPIRY_DATE='9999-12-31'
--创建证书 这里有两个"cer_alwayson_063",建议每台机器都改成不同的名称以作区分
EXEC xp_create_subdir 'C:\software\cerficates'
--创建存放证书目录
BACKUP CERTIFICATE cer_alwayson_063
TO FILE='C:\software\cerficates\cer_alwayson_063.cer'
--将证书保存在本地C:\software\cerficates 路径下
CREATE ENDPOINT Endpoint_Mirroring
STATE = STARTED
AS TCP (LISTENER_PORT = 5022, LISTENER_IP = ALL)
FOR DATABASE_MIRRORING (AUTHENTICATION = CERTIFICATE cer_alwayson_063,
ENCRYPTION = REQUIRED ALGORITHM AES,
ROLE = ALL)
--创建镜像端点
--step2:
CREATE LOGIN alwayson_user
WITH PASSWORD='*********',
CHECK_POLICY=OFF
--创建镜像用户
USE MASTER
GO
CREATE USER alwayson_user FOR LOGIN alwayson_userCREATE CERTIFICATE cer_alwayson_064
AUTHORIZATION alwayson_user
FROM FILE='C:\software\cerficates\cer_alwayson_064.cer'--step3:grant connection right
GRANT CONNECT ON ENDPOINT:: Endpoint_Mirroring TO alwayson_user
sql4服务器执行
--step1
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '***********'
--创建主密钥
CREATE CERTIFICATE cer_alwayson_064
WITH SUBJECT='alwayson 064 local certificate',
EXPIRY_DATE='9999-12-31'
--创建证书 这里有两个"cer_alwayson_064",建议每台机器都改成不同的名称以作区分
EXEC xp_create_subdir 'C:\software\cerficates'
--创建存放证书目录
BACKUP CERTIFICATE cer_alwayson_064
TO FILE='C:\software\cerficates\cer_alwayson_064.cer'
--将证书保存在本地C:\software\cerficates 路径下
CREATE ENDPOINT Endpoint_Mirroring
STATE = STARTED
AS TCP (LISTENER_PORT = 5022, LISTENER_IP = ALL)
FOR DATABASE_MIRRORING (AUTHENTICATION = CERTIFICATE cer_alwayson_064,
ENCRYPTION = REQUIRED ALGORITHM AES,
ROLE = ALL)
--创建镜像端点
--step2:
CREATE LOGIN alwayson_user
WITH PASSWORD='**********',
CHECK_POLICY=OFF
--创建镜像用户
USE MASTER
GO
CREATE USER alwayson_user FOR LOGIN alwayson_userCREATE CERTIFICATE cer_alwayson_063
AUTHORIZATION alwayson_user
FROM FILE='C:\software\cerficates\cer_alwayson_063.cer'--step3:grant connection right
GRANT CONNECT ON ENDPOINT:: Endpoint_Mirroring TO alwayson_user
⑤、建一个测试数据库
sql3作为主数据库服务器创建一个新测试数据库
将sql3上的Demo数据库做一个完整备份和日志备份还原到sql4服务器上
注:恢复状态需设置为RESTORE WITH NORECOVERY
注:按此手动同步数据库,创建可用性组后需要进入副本服务器sql 可用性组中将副本服务器上的数据库手动联接到可用性组
查看sql4上数据库状态
⑥、配置 sql server always on 可用性
此操作在sql3上执行
设置可用性组名称,例如:sqlcluster
选择需要高可用的数据库
指定副本
设置可用性模式为同步提交,且都可读。并勾选自动故障转移!
备份可以在任何副本上执行
创建侦听器:sqlcluster
数据库同步方式
我这里选择手动备份还原,所以跳过初始化同步。
验证没问题就执行下一步
接下来喝杯茶,等着安装完成。
注:上面配置完之后还有一部需要操作,否则查看sql server 可用性组面板显示错误
在副本服务器上将数据库联接到可用性组
再次刷新可用性面板
高可用性就搭建好了!
四、报错处理
①、没有做事务日志还原
解决办法:在主数据库服务器备份最新事务日志还原到报错的节点即可。
参考:配置SQL Server 2016无域AlwaysOn
参考:sql server 2016 AlwaysOn实现无域高可用全教程
Sql server 2016 Always on 实现无域高可用相关推荐
- win10无法打开匿名级安全令牌_Win10安装Sql Server 2016错误解决教程
SQL Server 2016 是微软发布的最流行的商业数据库软件之一,由于SQL Server 2016对安装的环境要求高,很多朋友在Win10下安装SQL Server 2016时都遇到了错误,下 ...
- 配置SQL Server 2016无域AlwaysOn
Windows Server 2016 以及 SQL Server 2016出来已有一段时间了,因为Windows Server 2016可以配置无域的Windows群集,因此也能够以此来配置无域的S ...
- sql server 2016 Always on 无域部署教程
sql server 2016 Always on 无域部署教程 一.环境描述 1.1.前言 SQL Server AlwaysOn功能在SQL Server 2012版本就已经出来了,AlwaysO ...
- sqlserver故障转移集群和alwayson的区别_详解SQL Server 2016 + AlwaysOn 无域集群
搭建 WSFC 配置计算机的 DNS 后缀 1.配置计算机的 DNS 后缀,注意在同个工作组 2.每个节点的机器都要做域名解析,修改 host 文件C:WindowsSystem32driverset ...
- SQL Server 2016 AlwaysOn 安装及配置介绍
SQL Server 2016 AlwaysOn 安装及配置介绍 Always On 可用性组功能是一个提供替代数据库镜像的企业级方案的高可用性和灾难恢复解决方案. SQL Server 2012 ...
- sql azure 语法_在Azure中使用SQL Server 2016 CTP3
sql azure 语法 As the time of the release of the next version of SQL Server is closing in, the cycle o ...
- SQL Server 2016的新功能–动态数据屏蔽
There are many new features in SQL Server 2016, but the one we will focus on in this post is: SQL Se ...
- Windows Server2016+SQL Server 2016 Cluster安装及配置
我们知道,近期微软正式发布了Windows Server2016和SQL Server Cluster 2016,所以借此机会来尝试一下Windows Server2016+SQL Server Cl ...
- SQL SERVER 2016 AlwaysOn搭建实例
安装要求 https://docs.microsoft.com/zh-cn/sql/database-engine/availability-groups/windows/prereqs-restri ...
最新文章
- oracle解除表锁死1,解除Oracle被锁的表
- 比利时女摄影师玛瑞亚
- finalize到底是什么
- JUC:ConcurrentSkipListMap/ConcurrentSkipListSet(并发容器)
- 激光雷达厂商速腾聚创获3亿元融资,阿里菜鸟、上汽,北汽入股
- [Oracle]如何在Oracle中设置Event
- 2021九江一中高考成绩查询系统,九江一中2018高考成绩
- array函数参数 scala_3小时Scala入门
- 从0到1亿美元 ---- PopCap创始人John Vechey自述(zt)
- mysql切换alisql_安装AliSQL
- 2021年安徽无为中学高考成绩查询,安徽省无为中学2021届高三年级这些学生,被表彰了...
- jdom生成与解析xml详解
- 一元三次方程求解(求根) - 盛金公式法
- 计算机类毕业设计评语导师评语,本科生毕业设计导师评语参考
- S/HIC 系列软件:diploS/HIC 利用 CNN 和非定向基因型数据识别 软/硬 清扫
- 天童美语育儿书籍推荐《愿你慢慢长大》
- 域服务器的信息存放在哪,域名服务器上存放着internet主机的
- STM8/32 芯片数据擦除
- 正版授权|FastStone Image Viewer 图像编辑转换浏览器软件,个人免费的图像浏览器、转换器和编辑器。
- 金融与python-基于Python的金融分析与风险管理
热门文章
- 将一元人民币兑换成1分、2分、5分,有几种兑换办法?
- 51单片机定时器(T0/T1)的使用与配置流程
- 新课发布-SpringBoot2.0缓存中间件Redis技术入门与实战(抢红包系统设计与实战)
- 自由截图、提取、翻译图中文字——搜狗浏览器之截图扩展
- Android群英传读书笔记-2D绘图基础
- fooview辅助功能 shell_Fooview:一款功能超多的桌面悬浮球,帮你摆脱多余操作
- android代码修改mp3文件封面,从android中的mp3文件中提取专辑封面
- 海南实现旅游总收入1.06亿元人民币
- C 语言时间函数 秒 毫秒 微秒
- 新玺配资:上证指数震荡向上 关注3550区域压力!