一、准备环境
操作系统:Windows Server 2019 Datacenter
数据库:cn_sql_server_2019_enterprise_x64
2台服务器:
计算机名称 | 计算机全名 | IP |
master | master.xx.com | 192.168.1.201 |
backup | backup.xx.com | 192.168.1.202 |
201、202服务器修改DNS:
注意:首选DNS服务器地址填写:192.168.1.203
201、202服务器修改主机名:
二、配置故障转移集群
1、201、202服务器关闭服务器防火墙
2、201、202服务器关闭防火墙配置host
-
192.168.1.201 master.xx.com
-
192.168.1.202 backup.xx.com
-
192.168.1.203 MyCluster.xx.com #集群IP,虚拟的
-
192.168.1.204 mk-SQL #监听器IP
4、201、202服务器配置故障转移集群
注意,
在填写集群名称时,填写:MyCluster
在配置“用于管理集群的访问点” IP,填写192.168.1.203
验证故障转移是否成功
打开201或202,服务器管理器–>工具–>故障转移群集–>右键故障转移群集管理器–>连接到群集–>输入集群的名称,MyCluster.xx.com
三、201、202安装SqlServer2019
1、C盘中新建一个gdmk文件夹(两台都要建),文件夹权限Everyone读取/写入
2、数据库安装:
略
注意事项:
201、202服务器安装SqlServer2019企业版本,安装功能时全选,排除掉”机器学习服务“,用户验证选择“混合模式”,然后下一步...
3、201、202开启AlwaysOn
4、在数据库里安装证书
主数据库201,在SSMS中执行
-
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
辅助数据库202 ,在SSMS中执行
-
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
互换和载入对方的证书
将201证书C:\gdmk\CERT1 拷贝到204目录C:\gdmk\CERT1
将204证书C:\gdmk\CERT2 拷贝到201目录C:\gdmk\CERT2
主数据库201,在SSMS中执行
CREATE CERTIFICATE CERT2 FROM FILE = 'C:\gdmk\CERT2.cer';
辅助数据库202 ,在SSMS中执行
CREATE CERTIFICATE CERT1 FROM FILE = 'C:\gdmk\CERT1.cer';
SSMS新建可用性组(连接201)
新建数据库:MyDemo,新建表:Product ,进行完整备份
四、程序连接串
Data Source=192.168.1.204;Initial Catalog=MyDemo;User ID=sa;Password=xxxx
五、测试
随机关闭201或202服务器,SqlServer可正常使用!
下面是我关闭了201服务器,SqlServer亲测可使用
SSMS下载地址:https://docs.microsoft.com/zh-cn/sql/tools/overview-sql-tools?view=sql-server-ver15