1.服务器规划
服务器 |
Ip |
DNS |
SQLDC |
192.168.171.20 |
127.0.0.1 |
SQLNODE1 |
192.168.171.21 |
192.168.171.20 |
SQLNODE2 |
192.168.171.22 |
192.168.171.20 |
- 修改3台电脑 计算机名称(准备sqlserver2014安装包)
将作为域控的服务器改为SQLDC,其余两台分别是SQLNODE1,SQLNODE2
2.开始
2.1配置ip和dns
配置SQLDC 的 DNS和IP 地址(后续SQLNODE1和SQLNODE2会用到SQLDC的IP)
2.2安装AD和DNS
1.单击任务栏”服务器管理器”,打开服务器管理器仪表板,单击”管理” 菜单,选择”添加角色和功能”,单击下一步 选择”基于角色或基于功能安装”,单击下一步
2.勾选Active Directory域服务器,以及DNS服务器
3.然后单击下一步,一路下一步,最后单击安装,安装完成后单击”关闭”按钮
2.3配置域控
1、单击服务器管理面板惊叹号部分,如下图,再单击”将此服务器提升为域控服务器”
2、添加新林,如下示例,添加为ycdata.NET(按实际环境配置)
3、选择”域名系统(DNS)服务器”。默认是选”全局编录”。并设置活动目录还原密码后单击下一步
4、DNS选项提示
5、设置NetBIOS名称,此处保留缺省值
6、设定ADDS位置,保留缺省值
7、下面是配置清单,单击下一步
8、执行先决条件检查,单击安装,安装完毕后会自动重启
9、重启使用域,管理员登录
10、查看AD域和信任关系,以及查看AD站点和服务,单击相应的菜单即可
2.4添加域用户(用administraor可以略过此步)
1、此处添加的域用户,主要是为后续SQLserver安装及管理做准备
服务器管理器面板,单击”管理”,单击”AD用户和计算机” 右单击域,选择”新建”,选择”组”
输入组名,如本例为SQLTeam
2、右单击”Users”,选择”新建”,选择”用户”
3、输入用户名
4、 输入密码
5、创建用户完成
6、将用户添加到组
- 选择组,添加完成
2.5所有节点加入到域
进入SQLNODE1,SQLNODE2服务器,将他们分别加入到域中。
2、修改IP地址,网关及DNS等之后将计算机加入到域
将SQLDC中建立的sqlanywhere用户 加入到SQLNODE1,SQLNODE2的本地管理员组。(打开SQLNODE1,SQLNODE2计算机管理,选择本地用户和组,双击Administrators,点击”添加”,如下图)
2.6确认节点是否连接完毕
用这个命令在三台服务器上互相输入,看3台服务器直接是否连通。没连通不能进行下一步
3.安装故障转移群集(所有数据节点)
安装
3.1、单击任务栏”服务器管理器”,打开服务器管理仪表板,单击”管理”菜单,选择”添加角色和功能”
单击”下一步”,选择”基于角色或基于功能的安装”,单击”下一步” 选择本地服务器,单击”下一步”,直到功能模块,选择”.NET 3.5”,后续安装SQLserver会用到。拖动滚动条,选择”故障转移群集”
配置WSFC(故障转移群集)
3.1、所有的群集节点安装完故障转移功能后,在任意一节点,以域管理员身份登陆,进行群集配置
3.5 在红框里填上SQLNODE1和SQLNODE2 回车,就进去了,然后下一步。
创建群集之前进行验证
在域控上创建一个文件夹,并共享(生产环境下该文件夹不建议存放到域控),确保2节点均可访问该节点共享的文件夹(当前为2节点,主要是满足集群基数节点部署的常规做法) 此处我们在启用文件共享见证时创建文件夹
(当提示共享文件报错是,只需要在共享文件夹,将当前用户加入到管理员组,配予相应权限就能成功了。)
4.安装sql2014
4.1.安装
用域账号登陆节点,下图里选项选择安装用户为域管理用户(如果选择了默认,安装完启动alwayson服务的时候需要配置启动用户为域用户,安装的时候如果没有使用域账号登陆,还有登陆数据后添加域账号并加入到sysadmin组)
(在SQLNODE1,SQLNODE2服务器中安装SQLserver中,在需要配置用户的时候,都将当前用户配置进去,sqlanywhere/YCDATE)
4.2开启alwayson
- 打开SQLserver配置管理器,找到SQLserver服务,勾选启用AlwaysOn可用性组
- 检查是否用域账号启动
- 重启
- 验证
右单击SQLserver服务器选择属性,可以看到启用HADR为True,即表明AlwaysOn已生效
4.3 配置数据同步一
1.在sqldata1上创建数据库
CREATE DATABASE AlwaysonDB1; GO CREATE DATABASE AlwaysonDB2; GO USE AlwaysonDB1; GO CREATE TABLE t1 (id INT ,dbname VARCHAR(20)); INSERT INTO t1 VALUES ( 1, 'AlwaysonDB1' ); USE AlwaysonDB2 CREATE TABLE t2 (id INT ,dbname VARCHAR(20)); INSERT INTO t2 VALUES ( 1, 'AlwaysonDB2' ); |
2.创建共享文件夹,用于存放备份以及辅助节点读取备份
如下图,创建了共享文件夹
3.为共享文件夹分配合适的权限
4.备份数据库
此步骤可以省略,可以在初始化的时候有SQLserver自行备份及还原
backup database AlwaysonDB1 to disk='C:\AlwaysonBAK\AlwaysonDB1.BAK'; backup database AlwaysonDB2 to disk='C:\AlwaysonBAK\AlwaysonDB2.BAK'; |
5.配置AlwaysOn可用性组
6.使用可用性组向导,如下图
7.指定可用性组名称
8.为可用性组选择数据库,即哪些数据库为为当前可用性组
9.添加辅助节点,选择windows身份验证
10.配置转移模式以及提交模式,可读等相关选项项目有描述,可参考。如副本模式等
11.端点配置,保留缺省即可,此处的端点配置等同于数据库镜像时的端点
12.备份首选项
主要是用于设定那个副本具有优先备份的权限,此处忽略了侦听器的配置,可以在后续进行配置
13.选择数据同步方式
此处选择了完整同步,即SQLserver会自动去备份以及在辅助副本上进行还原
14.验证配置
15.摘要信息
16.开始构建AlwaysOn可用组
17.构建完成
18.验证可用性组
节点1如下图
19.节点2如下图,2个数据库显示为已同步
20.
20.可用性组管理面板
右单击AlwaysOn高可用性,选择显示面板
4.4配置数据同步二
1.备份数据库, 在其他节点恢复数据库时选择RESTORE WITH NORECOVERY
2.不使用共享文件夹,直接备份数据库,如果选择第3项,可以在创建完后再恢复数据库
3.其他节点显示成功
5.测试故障转移
1、选择可用性组,右单击,选择故障转移
2、故障转移向导
3、选择新的主副本
4、连接到副本
5、转移的摘要信息
6、开始故障转移
7、验证转移结果
8、自动故障转移
当前读写节点为SQLNODE2,直接将SQLNODE2 sqlserver服务重启,可用组会自动漂移到SQLNODE1。