AlwaysOn 可用性组功能是一个高可用性和灾难恢复解决方案,可以提供替代数据库镜像的企业级方案。 在 SQL Server 2012 中引入,AlwaysOn 可用性组可最大程度地提高企业一组用户数据库的可用性。 “可用性组”针对一组离散的用户数据库(称为“可用性数据库”,它们共同实现故障转移)支持故障转移环境。 一个可用性组支持一组读写主数据库以及一至八组对应的辅助数据库。 (可选)可使辅助数据库能进行只读访问和/或某些备份操作。
可用性组在可用性副本级别进行故障转移。 故障切换并非由数据库问题引起,比如由于数据文件丢失、数据库被删除或事务日志损坏导致数据库状态变得可疑。
优点
AlwaysOn 可用性组提供了一组丰富的选项,这些选项可提高数据库可用性,并启用改进的资源使用。 主要组件如下:
支持最多九个可用性副本。 “可用性副本”是可用性组的实例化,此可用性组由特定的 SQL Server 实例承载,该实例维护属于此可用性组的每个可用性数据库的本地副本。 每个可用性组都支持一个主副本和最多八个辅助副本。 有关详细信息,请参阅 AlwaysOn 可用性组概述(SQL Server)。
重要
每个可用性副本都必须驻留在一个 Windows Server 故障转移群集 (WSFC) 的不同节点上。 有关可用性组的先决条件、限制和建议的详细信息,请参阅 AlwaysOn 可用性组的先决条件、限制和建议;SQL Server;。
支持替代可用性模式,如下所示:
异步提交模式。 此可用性模式是一种灾难恢复解决方案,适合于可用性副本的分布距离较远的情况。
同步提交模式。 此可用性模式相对于性能而言更强调高可用性和数据保护,为此付出的代价是事务延迟时间增加。 给定的可用性组最多可以支持三个同步提交可用性副本,包括当前主副本。
有关详细信息,请参阅 可用性模式;始终开启可用性组;。
支持几种形式的可用性组故障转移:自动故障转移、计划的手动故障转移(通常简称为“手动故障转移”)和强制的手动故障转移(通常简称为“强制故障转移”)。 有关详细信息,请参阅 故障转移和故障转移模式;“始终在线”可用性组 (Always On Availability Groups);。
使您能够将给定的可用性副本配置为支持以下一种或两种活动辅助功能:
只读连接访问,使副本的只读连接能够在作为辅助副本运行时访问和读取其数据库。 有关详细信息,请参阅 活跃次级副本:可读次要副本;AlwaysOn可用性组)。
当系统以辅助副本身份运行时,对其数据库执行备份作业。 有关详细信息,请参阅 “活动辅助副本:次要副本上的备份”。
使用主动辅助功能可以提高 IT 效率,并通过更好地利用辅助硬件的资源来降低成本。 此外,通过将读意向应用程序和备份作业转移到辅助副本,有助于提高针对主副本的性能。
支持每个可用性组的可用性组侦听器。 可用性组侦听器是一个服务器名称,客户端可以连接到该名称,以便访问 AlwaysOn 可用性组的主副本或次要副本中的数据库。 可用性组侦听器将传入连接定向至主要副本或只读次要副本。 侦听器在可用性组故障转移之后提供快速的应用程序故障转移。 有关详细信息,请参阅 可用性组侦听器、客户端连接和应用程序故障转移;SQL Server;。
支持灵活的故障转移策略以便更好地控制可用性组故障转移。 有关详细信息,请参阅 故障转移和故障转移模式;AlwaysOn 可用性组;。
支持用于避免页损坏的自动页修复。 有关详细信息,请参阅 “自动页面修复”(对于可用性组和数据库镜像);。
支持加密和压缩,这提供了安全且高性能的传输方式。
提供了一组集成的工具来简化部署和管理可用性组,这些工具包括:
用于创建和管理可用性组的 Transact-SQL DDL 语句。 有关详细信息,请参阅 AlwaysOn 可用性组的 Transact-SQL 语句概述;SQL Server;。
SQL Server Management Studio 工具,如下所示:
新建可用性组向导 创建和配置可用性组。 在某些环境中,此向导还可以自动准备辅助数据库并且为每个数据库启动数据同步。 有关详细信息,请参阅 “使用新建可用性组”对话框;SQL Server Management Studio;。
将数据库添加到可用性组向导 向现有可用性组添加一个或多个主数据库。 在某些环境中,此向导还可以自动准备辅助数据库并且为每个数据库启动数据同步。 有关详细信息,请参阅使用“将数据库添加到可用性组向导”(SQL Server)。
将副本添加到可用性组向导 向现有可用性组添加一个或多个辅助副本。 在某些环境中,此向导还可以自动准备辅助数据库并且为每个数据库启动数据同步。 有关详细信息,请参阅 使用“将副本添加到可用性组向导”;SQL Server Management Studio;。
故障转移可用性组向导 启动对可用性组的手动故障转移。 根据您指定为故障转移目标的辅助副本的配置和状态,该向导可以指定计划的手动故障转移或强制手动故障转移。 有关详细信息,请参阅 使用故障转移可用性组向导;SQL Server Management Studio;。
AlwaysOn 仪表板监视 AlwaysOn 可用性组、可用性副本和可用性数据库,并评估 AlwaysOn 策略的结果。 有关详细信息,请参阅 使用 AlwaysOn 仪表板;SQL Server Management Studio;。
“对象资源管理器详细信息”窗格显示有关现有可用性组的基本信息。 有关详细信息,请参阅 使用对象资源管理器详细信息监视可用性组;SQL Server Management Studio;。
PowerShell cmdlet。 有关详细信息,请参阅 Always On 可用性组的 PowerShell Cmdlet 概述;SQL Server;。
术语和定义
可用性组
一个容器,用于一组共同实现故障转移的数据库(“可用性数据库”)。
可用性数据库
属于可用性组的数据库。 对于每个可用性数据库,可用性组将保留一个读写副本(“主数据库”)和一个到八个只读副本(“辅助数据库”)。
主数据库
可用性数据库的读写副本。
辅助数据库
可用性数据库的只读副本。
可用性副本
可用性组的实例化,该可用性组由特定的 SQL Server 实例承载,并维护属于该可用性组的每个可用性数据库的本地副本。 存在两种类型的可用性副本:一个主副本和一至八个辅助副本。
主副本
使主数据库可用于来自客户端的读写连接并用于将每个主数据库的事务日志记录发送到每个辅助副本的可用性副本。
次要副本
维护各可用性数据库的辅助副本的可用性副本,充当可用性组的潜在故障转移目标。 或者,辅助副本可以支持对辅助数据库进行只读访问,并支持对辅助数据库创建备份。
可用性组监听器
客户端可以连接到的服务器名称,以便访问 AlwaysOn 可用性组的主副本或次要副本中的数据库。 可用性组侦听器将传入连接定向至主要副本或只读次要副本。
注释
有关详细信息,请参阅 AlwaysOn 可用性组概述;SQL Serve;。
与其他数据库引擎功能的互作性和共存
AlwaysOn 可用性组可用于 SQL Server 的以下功能或组件:
警告
有关将其他功能用于 AlwaysOn 可用性组的限制和限制的信息,请参阅 AlwaysOn 可用性组:互作性;SQL Server;。
相关任务
相关内容
博客:
视频:
Microsoft SQL Server Code-Named“Denali”Always On 系列,第 1 部分:介绍下一代高可用性解决方案
Microsoft SQL Server Code-Named“Denali”AlwaysOn 系列,第 2 部分:使用 AlwaysOn 构建 Mission-Critical 高可用性解决方案
白皮书:
另请参阅
AlwaysOn 可用性组概述;SQL Server;
AlwaysOn 可用性组的先决条件、限制和建议 (SQL Server)
为始终在线可用性组配置服务器实例;SQL Server;
创建和配置可用性组;SQL Server;
管理可用性组;SQL Server;
监视可用性组 (SQL Server)
Always On 可用性组的 Transact-SQL 语句概览;SQL Server;
AlwaysOn 可用性组的 PowerShell Cmdlet 概述;SQL Server;