节点搭建

修改IP和机器名并加入域控

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver


注意:首选DNS服务器那里写域控的IP

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_02

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_03

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_Server_04

克隆机器需要重新生成SID

打开C:\Windows\System32\Sysprep下的sysprep工具

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_05

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_06


这里选中通用,点击确认后自动重启机器重新输入产品密钥并修改IP并加入域控(重复上述操作)

安装jdk(或者jre 7更新或更高版本)

这一步可以省略,但是作为一个力求做个完美主义者,这个还是装一下吧,不安装的话在后面会有一个报错,跳过方式请按照这个做:SQLServer 2017安装时的错误:Polybase要求安装Oracle JRE 7更新51或更高版本

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_07

新建JAVA_HOME环境变量

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_08


新建CLASSPATH环境变量 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(别忘了当前目录)

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_09


在PATH变量中加入 ;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_10

在cmd窗口中输入java -version验证jdk是否安装成功

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_11

配置故障转移群集

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_Server_12


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_Server_13

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_14

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_15

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_16

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_Server_17

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_18

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_19

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_20

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_21

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_22

这里手动添加机器名,我也不知道为什么没有办法浏览去点击获取服务器

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_23

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_24

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_25

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_26

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_27


检测出错误尽量去解决错误

这里填写集群的名字和集群IP

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_28

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_29

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_30

集群创建成功,但还要加入见证。

添加文件共享见证

首先,现在域控服务器上创建一个文件夹并共享出去

如创建一个取名为shared_witness的文件夹

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_31

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_32

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_33

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_34

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_35

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_36

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_37

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_38

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_Server_39

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_Server_40

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_41

在这里能看到刚才创建的共享文件。

搭建sqlserver2017

iso镜像在windows2016上是可以直接装载的,载入SQL server的镜像后执行setup程序;

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_42

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_43

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_44

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_45

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_Server_46

关闭防火墙

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_47

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_48


这里有关机器学习的功能不要勾选,其他根据自己需要的功能进行勾选。(也可以跟我一样除了机器学习外其他全部勾选)

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_49

默认实例就行

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_50

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_Server_51

这里需要将装好更改为域账号,自动启动类型,如下图所示:

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_52


【具体操作】:

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_53

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_54

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_55

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_56

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_Server_57

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_58

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_59

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_60

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_61

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_62

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_63

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_Server_64

兄弟,这个过程很漫长,可以看刷30-60分钟的帖子了。走,出去浪!!!

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_65

启用TCP/IP协议和RemoteDAC

打开sqlserver配置管理器

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_66

安装SSMS-Setup-CHS

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_Server_67


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_Server_68

配置always on

每个数据库的(基本)AlwaysOn High Availabilty Group的创建都是相同的。基本可用性组只能包含一个数据库,因此对于每个数据库都需要一个基本可用性组。对于常规(SQL Enterprise)可用性组,您可以向同一可用性组添加更多数据库。

数据库必须满足以下条件才能添加到可用性组:

1、恢复模式:完整

2、至少创建一个数据库备份。

打开sqlserver管理器连接实例

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_69


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_70


创建一个新的数据库test并对其进行完备

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_71


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_72


安装SQL Server 2017后,在Windows操作系统下的开始菜单中找到“SQL Server 2017配置管理器”并打开配置管理器;

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_73


选择SQL Server实例属性

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_74


再次选择“SQL Server (InstanceName)”后右键单击,在弹出的上下文菜单中选择“重新启动”,对SQL Server数据库引擎执行重启操作;为了避免在配置与实施AlwaysOn Group时带来复杂的权限设置,建议将相关的SQL服务(如:SQL Server数据库引擎服务)启动登录身份由默认的“内置账户”改为指定的域用户账户;

如图:

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_75


创建alwayson可用性组

关闭之前的sqlserver管理器重新打开

SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_76


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_77


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sql_78


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_79


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_80


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_JAVA_81


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_82


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_sqlserver_83


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_84


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_85


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_86


SQL Server 2016 无域群集配置 AlwaysON 见证 sqlserver2016集群部署_SQL_87