sql  server 2012高可用解决方案

寻技术 SQLServer 2023年07月11日 125

sql server 2012 提供了多种可用于高可用性的解决方案,例如:

1. 通过使用 alwayson 可以提供虚拟 ip 地址(vip)来实现故障转移和读取可扩展性。

2. 镜像(mirroring)。它可以在两个实例之间同步数据库,并保持可用性。一个实例成为主实例,另一个是镜像实例,而数据则同时被写入两个实例。

3. 数据库复制。在这种情况下,一个实例成为发布者,负责将数据更改发布到订阅者。变更在订阅服务器上执行,而不会影响发布服务器或其他订阅服务器。

4. 所谓的“alwayson 复制”技术只能用于 sql server 2016 及更高版本中。

5. 群集(clustering)。虽然它并不是 sql server 自身的一项功能,但仍然是一种可用于实现高可用性的方法。群集包括两个或多个服务器,在群集内运行具有相同配置项的sql server 实例,并且使得当有一个服务器失败后,另一个节点接管。

以上列出的方式没有绝对的好与坏,唯有根据自己现有环境进行综合考虑,并根据需求选用适合自己业务的方案。

本教程按照sql server 2012步骤具体如下:

1.环境配置
2.域环境搭建
3.配置故障转移
4.搭建数据库alwayon

环境配置:

1.准备三台服务器

序号 内网ip 系统 账号密码 描述
1 172.19.200.110 Windows server 2008 r2 administrator (一致) 域控,dns,仲裁服务器
1 172.19.87.147 Windows server 2008 r2 administrator (一致) 集群节点1
1 172.19.87.146 Windows server 2008 r2 administrator (一致) 集群节点2

2.三台服务器阿里云在同一个安全组下(内网互通)

3.三台服务器分别安装 .NETFramWork 3.5及故障转移集群角色

4.域控服务器外网带宽问题(解决方案:域控服务器添加专属安全组,禁止外网和内网访问)

5.SQL AlwaysOn设置自动故障转移(侦听器),必须开通阿里云高可用虚ip(Havip),否则则会出现只主副本可以访问,域内其他节点访问不到。

5.SQL AlwaysOn锁承载的服务器必须同一阿里云可用区

6.SQL AlwaysOn如果通过侦听器ip访问,节点服务器同一区域即可,不需要同一可用区

7.链接只读路由连接串为【connectionString=“Data Source=侦听器名称;Initial Catalog=数据名称;Integrated

Security=SSPI;ApplicationIntent=ReadOnly;MultiSubnetFailover=True;”】

关闭

用微信“扫一扫”