[AlwaysOn2017] AlwaysOn的DMV和DMF - Sys.availability_replicas
7、 Sys. availability_replicas
为属于WSFC故障转移群集中任何AlwaysOn可用性组的每个可用性副本都返回一行。
如果本地服务器实例无法与WSFC故障转移群集联系,例如由于群集关闭或丢失了仲裁,则仅返回本地可用性副本的行。这些行将仅包含在元数据中本地缓存的数据列。
列名 | 数据类型 | 描述 |
replica_id | uniqueidentifier | 副本的唯一ID。 |
group_id | uniqueidentifier | 副本所属于的可用性组的唯一ID。 |
replica_metadata_id | int | 数据库引擎中可用性副本的本地元数据对象的ID。 |
replica_server_name | nvarchar(256) | 承载此副本的SQL Server实例的服务器名称;对于非默认实例,则为其实例名称。 |
owner_sid | varbinary(85) | 为此可用性副本的外部所有者向此服务器实例注册的安全标识符(SID)。 对于非本地可用性副本则为NULL。 |
endpoint_url | nvarchar(128) | 用户指定的数据库镜像端点的字符串表示形式,该数据库镜像端点由用于数据同步的主副本和辅助副本之间的连接使用。有关这些端点URL语法的信息,请参阅 在添加或修改可用性副本时指定端点URL(SQL Server)。 NULL = 无法联系WSFC故障转移群集。 若要更改此终结点,请使用ENDPOINT_URL选项 ALTER AVAILABILITY GROUP T-SQL语句。 |
availability_mode availability_mode_desc | tinyint nvarchar(60) | 副本的可用性模式,可为下列值之一: 0| ASYNCHRONOUS_COMMIT 异步提交。主副本可以不必等待辅助副本将日志写入磁盘,即可提交事务。 1| SYNCHRONOUS_COMMIT 同步提交。主副本等待提交给定的事务,直到辅助副本将事务写入磁盘。 4| CONFIGURATION_ONLY 仅配置。主副本同步发送到副本的可用性组配置元数据。用户数据不会传输到副本。可在SQL Server 2017 CU1及更高版本。 若要更改此设置可用性副本的可用性模式,使用的AVAILABILITY_MODE选项 ALTER AVAILABILITY GROUP T-SQL语句。不能将副本的可用性模式更改为 CONFIGURATION_ONLY 。不能更改 CONFIGURATION_ONLY 副本添加到辅助或主副本。 有关详细信息,请参阅 可用性模式(AlwaysOn可用性组)。 |
Failover_mode failover_mode_desc | Tinyint nvarchar(60) | 故障转移模式 可用性副本之一的: 0| AUTOMATIC 自动故障转移。副本是自动故障转移的潜在目标。可用性模式设置为同步提交,才支持自动故障转移( availability_mode = 1) 并且可用性副本当前已同步。 1| MANUAL 手动故障转移。设置为手动故障转移的向辅助副本的故障转移必须由数据库管理员手动启动。要执行的故障转移的类型将依赖于是否同步辅助副本,如下所示:如果可用性副本未同步或者仍在同步,则只能发生强制故障转移(可能会丢失数据);如果可用性模式设置为同步提交( availability_mode = 1) 并且该可用性副本当前是已同步、手动故障转移不会发生数据丢失。 若要查看可用性副本中的每个可用性数据库的数据库同步运行状况的汇总,请使用 Sys.dm_hadr_availability_replica_states动态管理视图 synchronization_health 和synchronization_health _desc 的列。此汇总信息考虑每个可用性数据库的同步状态和其可用性副本的可用性模式。 注意: 若要查看给定的可用性数据库的同步运行状况,请查询 Sys.dm_hadr_database_replica_states动态管理视图的 synchronization_state 和 synchronization_health 列。 若要更改的故障转移模式,请使用带 Failover_mode选项的 ALTER AVAILABILITY GROUP Transact-SQL语句。 |
session_timeout | int | 超时期限(秒)。超时期限是指副本接收来自其他副本的消息而等待的最长时间,超过此时间,将主副本和辅助副本之间的连接视为已失败。会话超时检测辅助副本是否与主副本相连接。 在检测到与辅助副本连接失败时,主副本将辅助副本"未同步"。在检测到与辅助副本的连接失败时,辅助副本只会尝试重新连接。 注意: 会话超时不会导致自动故障转移。 若要更改此值,使用带SESSION_TIMEOUT选项的 ALTER AVAILABILITY GROUP Transact-SQL语句。 |
primary_role_allow_connections primary_role_allow_connections_desc | tinyint nvarchar(60) | 可用性是允许所有连接还是仅允许读写连接,其中: 2 = ALL 所有(默认值) 3 = READ_WRITE 读写 |
secondary_role_allow_connections secondary_role_allow_connections_desc | tinyint nvarchar(60) | 正在履行辅助角色的可用性副本(也就是辅助副本)是否可以接受来自客户端的连接,可为下列值之一: 0 = NO 否。不允许连接到辅助副本中的数据库,且不支持读取这些数据库。这是默认设置。 1 = READ_ONLY 只读。仅允许针对辅助副本中的数据库进行只读连接。副本中的所有数据库都可用于读访问。 2 = ALL 全部。允许针对辅助副本中的数据库的所有连接进行只读访问。 有关详细信息,请参阅 活动次要副本:可读次要副本(Always On 可用性组)。 |
create_date | datetime | 副本的创建日期。 NULL = 副本不位于此服务器实例上。 |
modify_date | datetime | 上次修改副本的日期。 NULL = 副本不位于此服务器实例上。 |
backup_priority | int | 表示相对于同一可用性组中的其他副本,在此副本上执行备份的用户指定的优先级。该值是范围 0..100 中的整数。 有关详细信息,请参阅 活动次要副本:次要副本备份(Always On 可用性组)。 |
read_only_routing_url | nvarchar(256) | 只读可用性副本的连接端点(URL)。有关详细信息,请参阅 为可用性组配置只读路由(SQL Server)。 |
seeding_mode seeding_mode_desc | tinyint Nvarchar(60) | SQL 2017 新增加 辅助数据库种子设定模式。 |