需要windows2016和sqlserver216
节点1 :192.168.0.191
节点2 : 192.168.0.192
2
3
安装故障转移群集 和 Frame
4
192.168.0.190 SERVER1.sky.com
192.168.0.191 SERVER2.sky.com
192.168.0.194 Jf-alwayson
New-Cluster -Name Jf-alwayson -Node SERVER1,SERVER2 -StaticAddress 192.168.0.194 -AdministrativeAccessPoint DNS
--获取集群名
Get-Cluster
--群集详情
Get-ClusterResource
Get-ClusterNode
安装数据库
:配置SQL Server AlwaysOn
SQL Server的安装这里就不描述,直接从配置AlwaysOn开始操作。
1 ,这里配置AlwaysOn,我采用的是共享文件夹的方式,所以首先在DB1这个节点上创建一个共享文件夹添加之前在每个节点上都创建的用户DCAdmin,让DB2这个节点也能访问。
既然节点没有加入域,那么就不能用域认证,只能用证书认证,因此需要创建证书和端点。
因此在配置可用性组前先在各节点配置证书认证信任。
(证书的位置没什么关系,只要能够创建就可以了)
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
(下面这句,似乎不用在节点2执行了)
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
后面的配置跟always差不多。当故障转移群集可以搭建成功,意味着,alwayson几乎没什么问题。
有时候操作系统版本和数据库版本会影响结果