Windows Server 2016 以及 SQL Server 2016出来已有一段时间了,因为Windows Server 2016可以配置无域的Windows群集,因此也能够以此来配置无域的SQL Server AlwaysOn 高可用。

下面就来一步一步配置无域的SQL AlwaysOn

环境准备:

(1)操作系统:Windows Server 2016 Datacenter

(2)SQL Server 2016

注意:只有Windows Server 2016 才能无域配置群集

在每一个群集节点上以管理员方式运行Powershell:

new-itemproperty -path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System -Name LocalAccountTokenFilterPolicy -Value 1

IP以及名称规划:

节点1:JF-SQLDB01   IP地址:10.2.218.131

节点2:JF-SQLDB02   IP地址:10.2.218.132

Windows群集名称:JF-AlwaysOn   IP地址:10.2.218.130

可用性组名称:SQLAG

SQL侦听器名称:JFSQL01   IP地址:10.2.218.133

注意事项:

1,两个节点的Windos Server 2016 都已Administrator账户运行,并且两台服务器的Administrator密码相同。

2,两个节点的SQL Server 2016 服务启动账户都设置成Administrator 。

一:首先配置Windows群集

第一步:安装Windows故障转移群集(所有节点都需要安装)

第二步:每个节点的计算机不需要加入域,但需要添加DNS后缀,且每个节点的后缀必须要相同,如下图所示的操作。

第三步:在每个节点上都添加一个用户,且用户名以及密码每个节点都一致。

第四步:在每个节点的 hosts 文件中添加节点的计算机信息、群集信息、侦听器信息。

hosts文件路径:C:\Windows\System32\drivers\etc

hosts文件可以用记事本打开

第五步:设置允许应用或功能通过防火墙,两个节点均要设置,按照下面图中红框框出的地方设置,注意选项后面打勾的位置。

第六步:在DB1这个节点上,用以管理员方式运行Power Shell ,使用脚本创建Windows群集。因为无域的群集没有图形化界面可设置,所以只能使用PowreShell 。

注意:如果登陆Windows Server 2016服务器的账户不是Administrator,需要先以管理员方式运行PowerShell,执行下面的命令:

new-itemproperty -path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System -Name LocalAccountTokenFilterPolicy -Value 1

因为我登陆Windows Server 2016用的是Administrator,所以跳过执行上面的命令,直接运行下面的命令:

Power Shell 脚本:  New-Cluster -Name JF-AlwaysOn -Node JF-SQLDB01,JF-SQLDB02 -StaticAddress 10.2.218.130 -AdministrativeAccessPoint DNS

--获取集群名
Get-Cluster

--群集详情  
Get-ClusterResource

使用Power Shell 安装群集后,在故障转移群集管理器中是看不到群集信息的,需要手动连接到群集,如下面图所示:

打开故障转移群集管理器后,在管理器处右键鼠标,选择“连接到群集” :

在弹出的对话框中手动输入群集的名称:

这样就能在故障转移群集管理器中看到群集的信息了。同样的方法在DB2的节点上再重复设置即可在DB2上看到群集信息。

二:配置SQL Server AlwaysOn

SQL Server的安装这里就不描述,直接从配置AlwaysOn开始操作。

1 ,这里配置AlwaysOn,我采用的是共享文件夹的方式,所以首先在DB1这个节点上创建一个共享文件夹添加之前在每个节点上都创建的用户DCAdmin,让DB2这个节点也能访问。

2,在DB1和DB2上启用AlwaysOn

启用AlwaysOn会要求重启服务,重启就可以。

3,重启服务后,查看服务器属性,确保 HADR 为 True

既然节点没有加入域,那么就不能用域认证,只能用证书认证,因此需要创建证书和端点。

因此在配置可用性组前先在各节点配置证书认证信任。

4,分别在两个节点数据库上创建证书,并且彼此还原对方的证书,SQL代码如下:

--共享文件夹路径: ---\\JF-SQLDB01\SQLAlwaysOnShare

--节点一上执行:创建主密钥/证书/端点,备份证书。
USE master;
GO

CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'JFAlwaysOnShare2016'; ----密码
GO

CREATE CERTIFICATE Cert_DB01
WITH SUBJECT = 'Cert_DB01',
START_DATE = '2017-12-01',EXPIRY_DATE = '2099-12-31';
GO

BACKUP CERTIFICATE Cert_DB01
TO FILE = '\\JF-SQLDB01\SQLAlwaysOnShare\Cert_DB01.cer';
GO

CREATE ENDPOINT [SQLAG_Endpoint]
AUTHORIZATION [JF-SQLDB01\administrator]
STATE=STARTED
AS TCP (LISTENER_PORT = 5022, LISTENER_IP = ALL)
FOR DATA_MIRRORING
(ROLE = ALL,AUTHENTICATION = CERTIFICATE Cert_DB01, ENCRYPTION = REQUIRED ALGORITHM AES)
GO

--节点二上执行:创建主密钥/证书,备份证书。
USE master;
GO
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'JFAlwaysOnShare2016';
GO

CREATE CERTIFICATE Cert_DB02
WITH SUBJECT = 'Cert_DB02',
START_DATE = '2017-12-01',EXPIRY_DATE = '2099-12-31';
GO

BACKUP CERTIFICATE Cert_DB02
TO FILE = '\\JF-SQLDB01\SQLAlwaysOnShare\Cert_DB02.cer';
GO

CREATE ENDPOINT [SQLAG_Endpoint]
AUTHORIZATION [JF-SQLDB02\administrator]
STATE=STARTED
AS TCP (LISTENER_PORT = 5022, LISTENER_IP = ALL)
FOR DATA_MIRRORING
(ROLE = ALL,AUTHENTICATION = CERTIFICATE Cert_DB02, ENCRYPTION = REQUIRED ALGORITHM AES)
GO

--节点一上执行:创建节点二的证书
USE master;
GO
CREATE CERTIFICATE Cert_DB02
FROM FILE = '\\JF-SQLDB01\SQLAlwaysOnShare\Cert_DB02.cer';
GO

--节点二上执行:创建节点一的证书
USE master;
GO
CREATE CERTIFICATE Cert_DB01
FROM FILE = '\\JF-SQLDB01\SQLAlwaysOnShare\Cert_DB01.cer';
GO

5,配置可用性组,接下来就和以前版本的配置是一样的了,不再描述,按照下面的截图一步一步配置

6,最后创建侦听器,当然,创建侦听器也可以在上一步设置。

最后,可以使用侦听器来进入数据库,配置无域AlwaysOn成功。

---------------------
作者:左君右峰
来源:CSDN
原文:https://blog.csdn.net/roven257/article/details/78691892
版权声明:本文为博主原创文章,转载请附上博文链接!

配置SQL Server 2016无域AlwaysOn(转)的更多相关文章

  1. SQL Server 2016 Failover Cluster + ALwaysOn

    SQL Server 2016 Failover Cluster + ALwaysOn 环境的搭建 近期公司为了提高服务的可用性,就想到了部署AlwaysOn,之前的环境只是部署了SQL Server ...

  2. 第三篇——第二部分——第四文 配置SQL Server镜像——非域环境

    原文:第三篇--第二部分--第四文 配置SQL Server镜像--非域环境 本文为非域环境搭建镜像演示,对于域环境搭建,可参照上文:http://blog.csdn.net/dba_huangzj/ ...

  3. SQL Server 2016 非域Aways On环境搭建

    一.优点 aways on的优点,a. 构建主从数据库,分摊单点数据库压力.b.可以减少数据同步时间,提升用户体验.c.可以实现高可用,自动平滑切换. 二.缺点 及时同步最多只能提交3台,及时同步会导 ...

  4. SQL Server 2016 + AlwaysOn 无域集群

    目录 AlwaysOn 搭建 WSFC 配置计算机的 DNS 后缀 安装故障转移集群 验证集群 创建集群 创建文件共享见证 配置 AlwaysOn 新建可用性组 创建侦听器 可读副本的负载均衡 主角色 ...

  5. 第三篇——第二部分——第五文 配置SQL Server镜像——域环境SQL Server镜像日常维护

    本文接上面两篇搭建镜像的文章: 第三篇--第二部分--第三文 配置SQL Server镜像--域环境:http://blog.csdn.net/dba_huangzj/article/details/ ...

  6. Sql server 2016 Always On 搭建Windows集群配置

    .安装WSFC群集组件 1)打开服务器管理器,选择“功能”,在右边窗口中点击“添加功能”. 2)在添加功能向导中,勾选“故障转移群集”,点击“下一步”. 3)在“确认安装选择”页面中,点击“安装”,进 ...

  7. SQL SERVER 2016 AlwaysOn 无域集群+负载均衡搭建与简测

    之前和很多群友聊天发现对2016的无域和负载均衡满心期待,毕竟可以简单搭建而且可以不适用第三方负载均衡器,SQL自己可以负载了.windows2016已经可以下载使用了,那么这回终于可以揭开令人憧憬向 ...

  8. SQL 2016 AlwaysOn 无域AlwaysOn配置要点

    环境准备: (1)操作系统:Windows Server 2016 Datacenter (2)SQL Server 2016 配置SQL  2016 AlwaysOn 要点 1,因为没有域所以需要在 ...

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

    一.简介环境:小编使用的服务器是windows server 2016(系统服务器) + sql server 2016(数据库服务器)(windows server 2016 + sql serve ...

随机推荐

  1. IntellIJ IDEA 启动 参数 配置

    系统环境: 型号名称: MacBook Pro型号标识符: MacBookPro11,4处理器名称: Intel Core i7处理器速度: 2.8 GHz处理器数目: 1核总数: 4L2 缓存(每个 ...

  2. J - Intersection

    来源poj 1410 You are to write a program that has to decide whether a given line segment intersects a g ...

  3. Python中StringIO和BytesIO

    介绍一下Python在内存中读写数据,用到的模块是StringIO和BytesIO StringIO >>> from io import StringIO >>> ...

  4. linux下安装cmake(安装opencv库)

    apt-get install cmake cmake --version(显示版本号) cmake-gui(打开gui界面) 如果打不该GUI界面时候就需要apt-get install cmake ...

  5. python中的细节

    # 1 # li = ['a', 'b', 'c', 'd','e'] # print(li[10:]) #[] 不报错 # 2 # 这不是True或False,而是值 # 另外,优先级 not &g ...

  6. 常用Common集合

    Log using System; using System.IO; using System.Linq; using System.Text; namespace Common { public c ...

  7. linux 下安装 redis

    https://redis.io/ 1.下载 $ cd /usr/local/ $ wget http://download.redis.io/releases/redis-4.0.7.tar.gz ...

  8. CH 1601 - 前缀统计 - [字典树模板题]

    题目链接:传送门 描述给定 $N$ 个字符串 $S_1,S_2,\cdots,S_N$,接下来进行 $M$ 次询问,每次询问给定一个字符串 $T$,求 $S_1 \sim S_N$ 中有多少个字符串是 ...

  9. cordova 内部API 用ssl https,报错

    环境:node6.10.1 cordova 6.x, ionic 2.2.1 用cordova/ionic 建立的app我们的api 地址要用https,做了安全加密之后,按照正常的流程,打包,然后跑 ...

  10. Sethi model

    小结: 1. 销量 广告 微分方程 动态系统 市场份额 https://en.wikipedia.org/wiki/Sethi_model The Sethi model was developed ...