sql-server - SQL Server 2012 中的故障转移群集和 AlwaysOn 可用性组有什么区别

标签 sql-server database

我想知道 SQL Server 2012 中故障转移群集和 AlwaysOn 可用性组之间的区别

最佳答案

AlwaysOn 故障转移集群 (FCI) 与 Windows 服务故障转移集群 (WSFC) 相关联。这是一个高可用性 (HA) 场景,其中两个(或更多)服务器共享一个 SAN、WAN 或 NAS。第一个服务器是事件节点 (Node1)。第二台服务器是被动节点 (Node2)。第三台服务器称为见证或仲裁服务器,以设定的时间间隔(通常在 1 到 3 秒之间)对两台服务器进行心跳检查。如果其中一个服务器不响应心跳 ping,则另一个服务器被声明为主节点。如果那是 Node1,则不会发生任何更改。如果是 Node2,则 Witness 服务器会自动将数据库的控制权故障转移到该节点。故障转移通常在 15 秒内完成。任何未提交的事务都会自动回滚。

AlwaysOn 可用性组是对数据库镜像的改进。数据库镜像针对单个数据库,也有两个或多个节点。在这种情况下,每个节点都有自己的存储。镜像机制将同步或异步地将交易发送到镜像节点。同步模式将等待来自镜像的验证信号,然后再在主服务器中提交事务。异步模式将发送事务并直接进行本地提交。 AlwaysOn 可用性组通过将数据库分组在可用性组中改进了该概念。当一个数据库发生故障转移时,它们都会发生。您必须将 AlwaysOn FCI 配置为使用 AlwaysOn 可用性组,因为它们有一些通用库。 引用资料:

Adding Always-on Availability Groups to Existing Failover Clusters

Creating an SQL Server w/ Always-on Availability Group

Always-on Availability Groups vs Always-on Failover Clusters

关于sql-server - SQL Server 2012 中的故障转移群集和 AlwaysOn 可用性组有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35077318/

相关文章:

c# Listview 使用文本框搜索

MySQL 查询 : Aggregation at two different level

php - 在 PHP 中从 MySQL 中提取主键

SQL解析键值字符串

mysql - Mnesia 中的唯一约束

sql - 如何获取不考虑日期的按时间的点击次数?

SQL 变量比静态值返回需要更长的时间

database - 在远程机器上创建 PostgreSQL 数据库

c# - 如何在 ASP.NET Core Web 应用程序中使用 Entity Framework Core 从数据库中保存和检索图像?

c# - 为什么 `nvarchar` 参数比 'text' `SqlCommand` 命令的其他类型更快?