003.SQLServer数据库镜像高可用部署

一 数据库镜像部署准备

1.1 数据库镜像支持

有关对 SQL Server 2012 中的数据库镜像的支持的信息,请参考:https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2012/cc645993%28v%3dsql.110%29

1.2 其余前置条件

  • 若要创建镜像会话,伙伴双方和见证服务器(若是有)必须在相同版本的 SQL Server 上运行。
  • 确保两个伙伴(即主体服务器和镜像服务器)必须运行相同版本的 SQL Server。 见证服务器(若是有)在任意支持数据库镜像的 SQL Server 版本上运行。
  • 数据库必须使用完整恢复模式。 简单恢复模式和大容量日志恢复模式不支持数据库镜像。 所以,镜像数据库的大容量操做始终被完整地记入日志。
  • 验证镜像服务器是否能为镜像数据库提供足够的磁盘空间。
  • 在镜像服务器上建立镜像数据库时,请确保指定相同数据库名称 WITH NORECOVERY 来还原主体数据库备份。 另外,还必须经过 WITH NORECOVERY 应用在该备份执行后建立的全部日志备份。

注意:若是数据库镜像已经中止,则必须将对主体数据库执行的全部后续日志备份应用到镜像数据库中,而后才能够从新启动镜像。php

1.3 其余限制

  • 只能镜像用户数据库。 不能镜像 master、 msdb、tempdb 或 model 数据库。
  • 镜像的数据库在数据库镜像会话过程当中不能重命名。
  • 数据库镜像不支持 FILESTREAM。 不能在主体服务器上建立 FILESTREAM 文件组。 不能为包含 FILESTREAM 文件组的数据库配置数据库镜像。
  • 在 32 位系统上,因为受每一个数据库镜像会话所占用的工做线程数限制,对于每一个服务器实例,数据库镜像最多支持 10 个数据库。
  • 跨数据库事务和分布式事务均不支持数据库镜像。

二 部署规划准备

2.1 服务器规划

按照以下规划配置主机名(domain前缀)及IP。
服务器名称
描述
IP
DNS
操做系统
数据库版本
dsserver.imxhy.com
域服务器+DNS服务器
172.24.8.31
127.0.0.1
Windows Server 2008 R2
 
master.imxhy.com
主数据库服务器
172.24.8.32
172.24.8.31
Windows Server 2008 R2
SQLServer 2012 Enterprise
slave.imxhy.com
镜像数据库服务器
172.24.8.33
172.24.8.31
Windows Server 2008 R2
SQLServer 2012 Enterprise
arbit.imxhy.com
见证服务器
172.24.8.34
172.24.8.31
Windows Server 2008 R2
SQLServer 2012 Enterprise
提示:为便于测试,本环境将全部节点的专用、公用、域网络的防火墙均关闭。

三 DNS服务器安装

dsserver相关IP设置以下。
031
开始菜单 -> 管理工具 -> 服务器管理器 -> 角色 -> 添加角色,选择DNS 服务器,下一步:
32
等待安装完成。
32
以下相关服务已安装完成。
033

四 安装 Active Directory 域服务

开始菜单 -> 管理工具 -> 服务器管理器 -> 角色 -> 添加角色,选择Active Directory 域服务。
034
等待安装完成。
035
以下相关服务已安装完成。
036
开始菜单 -> 运行 -> 输入命令 "dcpromo" ,进入域控制器服务向导。
037
提示:dcpromo 命令是一个 "开关" 命令。若是 Windows Server  2008 计算机是成员服务器,则 运行 dcpromo 命令会安装 AD 活动目录,将其升级为域控制器;若是Windows Server 2008 计算机已是域控制器,则运行 dcpromo 命令会卸载 AD 活动目录,将其降级为成员服务器。
弹出 Active Direcotry 域服务安装向导,点击 "下一步" 按钮:
038
进入兼容性提醒页面,忽视便可,点击 "下一步" 按钮:
039
选择 "在新林中新建域”并点击",点击 "下一步" 按钮:
注意:若是是第一次搭建也是你整个内网中的第一台域控制器,那么须要选择第二项 "在新林中新建域",第一项是内网中已经存在 AD 环境再想搭建额外域控制器的时候使用的。
040
输入域名imxhy.com,这个需慎重,FQDN配置完毕以后修改相对麻烦且有风险,并点击 "下一步" 按钮:
041
进入林功能级别设置界面,选择 "Windows Server 2008 R2",而后点击 "下一步":
提示:若是你的 AD 中之后可能会出现 Windows Server 2003 系统的域控制器,请务必选择 Windows Server 2003 的域功能级别,不然以后 Windows Server 2003 的服务器作不了域控制器了,因此安装第一台 DC 的时候,但是选择的低级别的林功能,之后要升到 Windows Server 2008 的域功能级别是没问题的,如果选了 Windows Server 2008 的功能级别,降级比较困难。
042
其余域选项,若已安装,则会为灰色。
043
弹出 DNS 提示框,可忽视,点击 "是" 按钮,继续安装:
044
进入AD 域的数据库文件、日志文件和共享文件位置设置页面,此处保持默认设置,点击 "下一步" 按钮:
045
进入 "域还原密码" 设置界面,此密码至关的重要,后续作数据库迁移、备份、整理、恢复的时候均可能用到,须要谨记:
046
进入 "摘要" 界面,显示以前设置的摘要信息,点击 "下一步" 按钮:
提示:此处能够点击 "导出设置" 到一个位置保持起来,以便后续排错时查阅,也能够做为 DC 安装时的无人值守安装的脚本。
047
安装向导进入配置过程
048
此时,AD  域服务已经安装完成。ADDS域控制器已经安装完成,在完成域控制器的安装后,系统会自动的将该服务器的用户帐号转移到 AD 数据库中。
提示:安装完成后,建议重启服务器。
049
域控制器 DC 会将本身扮演的角色注册到 DNS 服务器内,以便让其余计算机可以经过 DNS 服务器来找到这台域控制器,所以先检查 DNS 服务器内是否已经存在这些记录。
050
首先检查域控制器是否已经将其主机名与 IP 地址注册到 DNS 服务器内,本域控制器也扮演DNS服务器,则进入DNS中查看,此处应该会有一个名称为 imxhy.com 的区域,主机(A)记录表示域控制器 dsserver.imxhy.com 已经正确地将其主机名与 IP 地址注册到 DNS 服务器内。DNS 客户端所提出的请求大可能是正向解析,即经过 hostname 来解析 IP 地址对应与此处的正向查找区域;经过 IP 来查找 hostname 即为反向解析,对应于此处的反向查找区域。
051
若是域控制器已经正确地将其扮演的角色注册到 DNS 服务器,则还应该有对应的 _tcp、_udp 等文件夹。在单击 _tcp 文件夹后能够看到以下所示的界面,其中数据类型为服务位置(SRV)的 _ldap 记录,表示 dsserver.imxhy.com 已经正确地注册为域控制器。其中的 _gc 记录还能够看出全局编录服务器的角色也是由 dsserver.imxhy.com 扮演的。
052
DNS 区域内包含这些数据后,其余要加入域的计算机就能够经过经过此区域来得知域控制器为 dsserver.imxhy.com。这些加入域的成员(域控制器、成员服务器、Windows 八、Windows 七、Windows Vista、Windows XP Professional 等)也会将其主机与 IP 地址数据注册到此区域内。

五 域用户建立及加入

5.1 域用户建立

开始菜单 -> 管理工具 -> Active Directory 用户和计算机
053
设置相关sqluser帐号及密码。
054
设置符合必定密码复杂度要求的密码。
055
将sqluser加入到administrators管理组中。
056

5.2 加入域控

master相关IP设置以下。
057
高级 -> DNS -> 此链接的 dns 后缀,添加域控的完整名称。
058
计算机右键 -> 属性 -> 高级系统设置 -> 计算机名 -> 更改
修改计算机名master,修改隶属于域:imxhy.com
059
点肯定以后弹出一个输入在域控中创建的用户的用户名和密码。
060
提示加入成功,加入成功后建议重启计算机。
061
注意:master.imxhy.com、slave.imxhy.com、arbit.imxhy.com都须要配置相关DNS为172.24.8.31,而后加入域“imxhy.com”,具体方法参考如上便可。

5.3 服务器配置域账户管理员

在master.imxhy.com、slave.imxhy.com计算机继续使用本地管理员administrator登陆,分别将“imxhy\sqluser”账户添加为本机管理员,如图所示:
062
注销本地administrator,使用sqluser@imxhy.com用户登陆,确认已具备管理员权限。
063

六 安装SQLServer 2012

6.1 使用向导安装

064
系统会自动检查安装环境,点击确认到下一步。
065
正版自带产品密钥,直接点击下一步。
066
勾选我接受许可条款,而后一直继续下一步。
067
进行产品更新。
068
勾选我接受许可条款,而后一直继续下一步。
069
检查安装程序支持规则。
070
采用默认SQL Server功能安装。
071
本实验安装主要功能,自行选择,安装路径采用默认,可根据须要自行选择。
072

提示:具体SQLServer功能模块介绍可参考:https://blog.csdn.net/m0_37154839/article/details/80233446。html

默认实列便可。mysql

 
073
检查磁盘空间要求。
074
服务器配置,将相关帐户配置为域用户及密码,相关服务设置为自动启动。
075
其余相关组件以下便可。
076
建议使用混合模式,并添加当前域用户。
077
错误报告配置。
078
安装配置规则。
079
准备安装,可确认全部相关信息。
080
等待安装完成。
081
安装完成。
082

6.2 配置SQLServer以域账户运行

分别在master.imxhy.com、slave.imxhy.com的“管理工具”中打开“服务”(或者用“SQL Server 配置管理器”),修改SQL Server实例的属性,将登陆身份改成“imxhy\sqluser”。修改以后,重启SQL Server实例。
083
提示:安装过程当中服务器配置已添加域帐户可跳过此6.2步骤。
084
说明:若是SQL Server实例是经过不一样的本地账户启动的,那么在建立镜像时主体数据库会尝试用本机账户去链接镜像数据库,最终会报错;
slave.imxhy.com、arbit.imxhy.com参考以上进行安装及配置。

6.3 启用TCP/IP协议和RemoteDAC

085
打开SQL Server Management Studio,链接本地数据库,
086
选择对应服务器, 如MASTER -> 方面。
087
选择“外围应用配置器” -> 将属性“RemoteDACEnabled”的值改成“True”。
088
注意:slave.imxhy.com、arbit.imxhy.com参考以上进行安装及配置。

七 测试数据库准备工做

7.1 master节点新建用户同步的数据库

在master.imxhy.com(主体服务器)打开SQL Server Management Studio,右键”数据库” -> “新建数据库”。
089
在”常规“页面输入数据库名称,本实验为MDB。
090
在”选项”页面确保恢复模式为”完整“。
091

7.2 备份master节点数据库MDB

右键”MDB”选择”任务“ -> ”备份“。
092
备份类型选择”完整“,点击”肯定“。
093
完整的备份完毕后,再次选择备份类型为”事务日志“,点击”肯定“完成对事务日志的备份。
094
提示:默认备份路径为:C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup。

7.3 slave节点新建用户同步的数据库

在slave.imxhy.com(镜像服务器)打开SQL Server Management Studio,右键”数据库” -> “新建数据库”。
095
输入数据库名称,点击“肯定”(此数据库名称必须与master中建立的数据库名称保持一致)
096

7.4 slave节点还原备份文件

将7.2所备份的文件MDB.bak复制至slave节点备份存放默认路径:C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup。
右键新建立的数据库“MDB” -> “任务” -> “还原” -> “数据库”。
097
依次添加须要还原的相关文件。
098
勾选要还原的备份集。
099
在“选项”页面勾选“覆盖现有数据库”,恢复状态选择“RESTORE WITH NORECOVERY”,取消勾选“还原前进行结尾日志备份”,点击“肯定”。
100
等待还原成功。
101
确认slave.imxhy.com(镜像服务器)处于正在还原。
102
提示:提示成功还原后slave节点MDB会一直处于正在还原状态,此状态为正常状态,表示等待master节点发起镜像同步。

八 配置数据库镜像

8.1 master节点配置镜像

在主体服务器SQL01.huangjh.com右键 -> “DB01” -> “任务” -> “镜像”。
103
点击“配置安全性”。
104
本实验规划见证服务器。
105
勾选“见证服务器实例”,下一步。
106
配置主题服务器实例及相应端口。
107
配置镜像服务器,可经过浏览或手动输入镜像服务器名称SLAVE,点击”链接”。
108
 
109
配置镜像服务器,可经过浏览或手动输入见证服务器名称ARBIT,点击”链接”。
110
 
111
确认见证服务器及相关端口信息。
112
输入实例服务帐户IMXHY\sqluser,下一步。
113
确认相关信息。
114
等待配置端点完成。
115
点击“开始镜像”。
116
提示:若出现镜像失败可在hosts中手动添加相应解析,保证网络连通性正常。
117

九 检查与验证

9.1 状态检查

主体服务器相关数据库状态应该为(主体,已同步)
118
镜像服务器相关数据库状态应该为(客体,已同步 / 正在还原..)
119
提示:对于镜像数据库,是不容许删除和操做。

十 功能验证

10.1 状态验证

在主体服务器MASTER右键数据库“MDB”选择“任务”—“启动数据库镜像监视器”。
120
在此页面可看到数据库镜像的同步状态等。
121

10.2 故障迁移测试

在主体服务器MASTER右键数据库“MDB”选择“属性”,在主体服务器SQL01右键数据库“DB01”选择“属性”,选择页“镜像”点击“故障转移”。
122
是。
123
在SLAVE上确认MDB状态是否变为(主体,已同步),可查看相关主体和镜像服务器已成功切换。
124

10.3 关机高可用测试

关闭此时的主体服务器,即SLAVE,而后回到MASTER,观察可知此时自动将主体故障转移到MASTER中,且镜像服务器SLAVE,状态为”没有链接:没法链接镜像服务器实例或见证服务器实例”。
125
将SLAVE开机后恢复正常后,状态为”已同步:数据库已彻底同步”,说明自动故障转移成功。
126
 
参考官方文档:https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2012/ms189852(v%3dsql.110)
https://blog.csdn.net/kelyon/article/details/79207585
http://www.php.cn/mysql-tutorials-116073.html
相关文章
相关标签/搜索