AlwaysOn 可用性组副本所在服务器以及该副本上数据库的各项状态信息

目录标题

    • 语句
      • 代码解释:
      • 1. `sys.dm_hadr_database_replica_states` 视图字段详细解释及官网链接
        • 官网链接
        • 字段解释
      • 2. `sys.availability_replicas` 视图字段详细解释及官网链接
        • 官网链接
        • 字段解释
    • 查看视图的创建语句
      • 方法一:使用 SQL Server Management Studio (SSMS)
      • 方法二:使用系统视图 `sys.sql_modules`
        • 代码解释:
      • 方法三:使用 `sp_helptext` 存储过程
        • 注意事项:
    • `[dbo].[ha_status]`
      • 1. 视图基本信息
      • 2. 视图定义
      • 3. 选择列及计算列
      • 4. 表连接
      • 总结
    • `[master].[dbo].[ha_status]` 的全面解释
      • 整体概述
      • 1. 查询语句部分
        • 各部分解释
      • 2. 视图 `[ha_status]` 各列详细解释
        • 标识信息
        • 故障转移相关
        • 副本角色与模式
        • 恢复时间与性能指标
        • 同步与状态信息
        • 其他信息
    • seeding
      • Seeding 的主要作用
      • 常见的 Seeding 状态及含义
        • 1. `NOT_STARTED`
        • 2. `IN_PROGRESS`
        • 3. `COMPLETED`
        • 4. `FAILED`
        • 5. `CANCELLED`
      • 查看 Seeding 状态的方法
        • 使用系统视图 `sys.dm_hadr_automatic_seeding`

语句

sys.dm_hadr_database_replica_statessys.availability_replicas 视图关联起来,

SELECT 
    ar.replica_id,
    ar.replica_server_name,
    ar.endpoint_url,
    ar.failover_mode_desc,
    ar.availability_mode_desc,
    drs.database_id,
    drs.group_database_id,
    drs.is_local,
    drs.is_primary_replica,
    drs.synchronization_state,
    drs.synchronization_state_desc,
    drs.is_commit_participant,
    drs.synchronization_health,
    drs.synchronization_health_desc,
    drs.database_state,
    drs.database_state_desc,
    drs.is_suspended,
    drs.suspend_reason,
    drs.suspend_reason_desc,
    drs.recovery_lsn,
    drs.truncation_lsn,
    drs.last_sent_lsn,
    drs.last_sent_time,
    drs.last_received_lsn,
    drs.last_received_time,
    drs.last_hardened_lsn,
    drs.last_hardened_time,
    drs.last_redone_lsn,
    drs.last_redone_time,
    drs.log_send_queue_size,
    drs.log_send_rate,
    drs.redo_queue_size,
    drs.redo_rate,
    drs.filestream_send_rate,
    drs.end_of_log_lsn,
    drs.last_commit_lsn,
    drs.last_commit_time,
    drs.low_water_mark_for_ghosts,
    drs.secondary_lag_seconds,
    drs.quorum_commit_lsn,
    drs.quorum_commit_time
FROM 
    sys.availability_replicas ar
JOIN 
    sys.dm_hadr_database_replica_states drs ON ar.replica_id = drs.replica_id;

在这里插入图片描述
在这里插入图片描述

SELECT DB_NAME(database_id) AS 'database', synchronization_state_desc FROM sys.dm_hadr_database_replica_states;

在这里插入图片描述

代码解释:

  1. sys.availability_replicas 视图

    • 该视图存储了 Always On 可用性组中每个副本的元数据信息。
    • replica_id:副本的唯一标识符。
    • replica_server_name:副本所在的 SQL Server 实例名称。
    • endpoint_url:副本的端点 URL,用于副本之间的通信。
    • failover_mode_desc:副本的故障转移模式描述,例如自动故障转移、手动故障转移等。
    • availability_mode_desc:副本的可用性模式描述,如同步提交、异步提交。
  2. sys.dm_hadr_database_replica_states 视图

    • 这是一个动态管理视图,提供了关于可用性组中数据库副本的实时状态信息。
    • 包含了你之前展示的众多列,如 database_idis_localis_primary_replica、同步状态相关列、日志序列号相关列等。
  3. JOIN 操作

    • 通过 JOIN 语句将 sys.availability_replicas 视图和 sys.dm_hadr_database_replica_states 视图根据 replica_id 进行关联。
    • 这样可以把副本的元数据信息(如副本所在服务器名称)和数据库副本的实时状态信息结合起来,让你既能确认 replica_id 对应的具体副本,又能查看该副本上数据库的详细状态。

1. sys.dm_hadr_database_replica_states 视图字段详细解释及官网链接

官网链接

sys.dm_hadr_database_replica_states (Transact - SQL)

字段解释
  • replica_id:可用性副本的唯一标识符,对应 sys.availability_replicas 中的 replica_id,用于关联两个视图。
  • group_id:可用性组的唯一标识符。
  • database_id:数据库的标识符,标识该副本中的数据库。
  • group_database_id:可用性组内数据库的唯一标识符。
  • is_local:指示该副本是否为本地副本。值为 1 表示是本地副本,0 表示不是。
  • is_primary_replica:指示该副本是否为主副本。1 表示主副本,0 表示辅助副本。
  • synchronization_state:数据库副本的同步状态的数字代码。例如 1 表示 SYNCHRONIZING(正在同步),2 表示 SYNCHRONIZED(已同步)等。
  • synchronization_state_desc:同步状态的文本描述,与 synchronization_state 代码对应。
  • is_commit_participant:指示该副本是否参与事务提交。1 表示参与,0 表示不参与。
  • synchronization_health:同步健康状态的数字代码。
  • synchronization_health_desc:同步健康状态的文本描述。
  • database_state:数据库状态的数字代码。
  • database_state_desc:数据库状态的文本描述。
  • is_suspended:指示该副本是否已暂停。1 表示暂停,0 表示未暂停。
  • suspend_reason:暂停原因的数字代码。
  • suspend_reason_desc:暂停原因的文本描述。
  • recovery_lsn:恢复日志序列号,指示数据库恢复的起始点。
  • truncation_lsn:截断日志序列号,指示可以截断日志的位置。
  • last_sent_lsn:主副本上最后发送到辅助副本的日志序列号。
  • last_sent_time:主副本上最后发送日志的时间。
  • last_received_lsn:辅助副本上最后接收到的日志序列号。
  • last_received_time:辅助副本上最后接收日志的时间。
  • last_hardened_lsn:辅助副本上最后持久化到磁盘的日志序列号。
  • last_hardened_time:辅助副本上最后持久化日志到磁盘的时间。
  • last_redone_lsn:辅助副本上最后重做的日志序列号。
  • last_redone_time:辅助副本上最后重做日志的时间。
  • log_send_queue_size:日志发送队列的大小(以字节为单位)。
  • log_send_rate:日志发送速率(以字节/秒为单位)。
  • redo_queue_size:重做队列的大小(以字节为单位)。
  • redo_rate:重做速率(以字节/秒为单位)。
  • filestream_send_rate:FileStream 数据的发送速率(以字节/秒为单位)。
  • end_of_log_lsn:日志末尾的日志序列号。
  • last_commit_lsn:最后提交事务的日志序列号。
  • last_commit_time:最后提交事务的时间。
  • low_water_mark_for_ghosts:幽灵记录的低水位标记。
  • secondary_lag_seconds:辅助副本相对于主副本的延迟秒数。
  • quorum_commit_lsn:法定提交的日志序列号。
  • quorum_commit_time:法定提交的时间。

2. sys.availability_replicas 视图字段详细解释及官网链接

官网链接

sys.availability_replicas (Transact - SQL)

字段解释
  • replica_id:可用性副本的唯一标识符,用于和 sys.dm_hadr_database_replica_states 视图进行关联。
  • group_id:可用性组的唯一标识符。
  • replica_metadata_id:副本的元数据标识符。
  • replica_server_name:承载该可用性副本的 SQL Server 实例的名称。
  • owner_sid:副本所有者的安全标识符。
  • endpoint_url:副本的端点 URL,用于副本之间的通信。
  • availability_mode:可用性模式的数字代码,例如 1 表示同步提交,2 表示异步提交。
  • availability_mode_desc:可用性模式的文本描述。
  • failover_mode:故障转移模式的数字代码,例如 1 表示自动故障转移,2 表示手动故障转移。
  • failover_mode_desc:故障转移模式的文本描述。
  • session_timeout&

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/964643.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

windows版的docker如何使用宿主机的GPU

windows版的docker使用宿主机的GPU的命令 命令如下 docker run -it --nethost --gpus all --name 容器名 -e NVIDIA_DRIVER_CAPABILITIEScompute,utility -e NVIDIA_VISIBLE_DEVICESall 镜像名效果 (transformer) rootdocker-desktop:/# python Python 3.9.0 (default, Nov 15 …

知识蒸馏教程 Knowledge Distillation Tutorial

来自于:Knowledge Distillation Tutorial 将大模型蒸馏为小模型,可以节省计算资源,加快推理过程,更高效的运行。 使用CIFAR-10数据集 import torch import torch.nn as nn import torch.optim as optim import torchvision.tran…

K8S集群部署--亲测好用

最近在自学K8S,花了三天最后终于成功部署一套K8S Cluster集群(masternode1node2) 在这里先分享一下具体的步骤,后续再更新其他的内容:例如部署期间遇到的问题及其解决办法。 部署步骤是英文写的,最近想练…

【Unity2D 2022:UI】创建滚动视图

一、创建Scroll View游戏对象 在Canvas画布下新建Scroll View游戏对象 二、为Content游戏对象添加Grid Layout Group(网格布局组)组件 选中Content游戏物体,点击Add Competent添加组件,搜索Grid Layout Group组件 三、调整Grid La…

c++:list

1.list的使用 1.1构造 1.2迭代器遍历 (1)迭代器是算法和容器链接起来的桥梁 容器就是链表,顺序表等数据结构,他们有各自的特点,所以底层结构是不同的。在不用迭代器的前提下,如果我们的算法要作用在容器上…

一文速览DeepSeek-R1的本地部署——可联网、可实现本地知识库问答:包括671B满血版和各个蒸馏版的部署

前言 自从deepseek R1发布之后「详见《一文速览DeepSeek R1:如何通过纯RL训练大模型的推理能力以比肩甚至超越OpenAI o1(含Kimi K1.5的解读)》」,deepseek便爆火 爆火以后便应了“人红是非多”那句话,不但遭受各种大规模攻击,即便…

游戏引擎 Unity - Unity 打开项目、Unity Editor 添加简体中文语言包模块、Unity 项目设置为简体中文

Unity Unity 首次发布于 2005 年,属于 Unity Technologies Unity 使用的开发技术有:C# Unity 的适用平台:PC、主机、移动设备、VR / AR、Web 等 Unity 的适用领域:开发中等画质中小型项目 Unity 适合初学者或需要快速上手的开…

[权限提升] Windows 提权 维持 — 系统错误配置提权 - 注册表权限配置错误提权

关注这个专栏的其他相关笔记:[内网安全] 内网渗透 - 学习手册-CSDN博客 0x01:注册表权限配置错误提权原理 通常 Windows 中的服务都是以 System 权限运行的,而 Windows 的服务程序的启动路径又是存放在注册表中的,若注册表配置不…

牛客周赛 Round 79

题目目录 A 小红的合数寻找解题思路参考代码 B 小红的小球染色解题思路参考代码 C 小红的二叉树解题思路参考代码 D 小红的“质数”寻找解题思路参考代码 E 小红的好排列解题思路参考代码 F 小红的小球染色期望解题思路参考代码 A 小红的合数寻找 \hspace{15pt} 小红拿到了一个…

Zookeeper入门部署(单点与集群)

本篇文章基于docker方式部署zookeeper集群,请先安装docker 目录 1. docker初期准备 2.启动zookeeper 2.1 单点部署 2.2 集群部署 3. Linux脚本实现快速切换启动关闭 1. docker初期准备 拉取zookeeper镜像 docker pull zookeeper:3.5.6 如果拉取时间过长&#xf…

【MySQL】MySQL经典面试题深度解析

文章目录 一、MySQL与C的深度结合1.1 为什么C项目需要MySQL?1.2 典型应用场景 二、基础概念面试题精讲2.1 存储引擎对比2.2 索引原理 三、C专项面试题解析3.1 连接池实现3.2 预处理语句3.3 批量操作优化 四、高级应用面试题剖析4.1 事务隔离级别4.2 锁机制详解4.3 查…

w190工作流程管理系统设计与实现

🙊作者简介:多年一线开发工作经验,原创团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹赠送计算机毕业设计600个选题excel文…

网络安全学习 day5

状态检测和会话技术 状态检测以 “ 数据流量 ” 为单位来对报文进行检测和转发。即对一条流量的第一个报文进行包过滤规 则检查,并将判断结果作为这条流量的 “ 状态 ” 记录下来 。对于该条流量的后续报文,直接根据这个 “ 状态 ”来判断是否转发还是…

4 前端前置技术(上):AJAX技术、Axios技术(前端发送请求)

文章目录 前言一、Ajax技术(从服务端获取数据,发送各种请求)0 接口文档管理:使用apipost等接口测试软件创建接口便于前端后端分离测试1 基本概念2 原生Ajax使用示例(几年前的早期用法) 二、 Axios技术(对原…

Node.js与嵌入式开发:打破界限的创新结合

文章目录 一、Node.js的本质与核心优势1.1 什么是Node.js?1.2 嵌入式开发的范式转变二、Node.js与嵌入式结合的四大技术路径2.1 硬件交互层2.2 物联网协议栈2.3 边缘计算架构2.4 轻量化运行时方案三、实战案例:智能农业监测系统3.1 硬件配置3.2 软件架构3.3 核心代码片段四、…

51c视觉~CV~合集10

我自己的原文哦~ https://blog.51cto.com/whaosoft/13241694 一、CV创建自定义图像滤镜 热图滤镜 这组滤镜提供了各种不同的艺术和风格化光学图像捕捉方法。例如,热滤镜会将图像转换为“热图”,而卡通滤镜则提供生动的图像,这些图像看起来…

OPENPPP2 —— VMUX_NET 多路复用原理剖析

在阅读本文之前,必先了解以下几个概念: 1、MUX(Multiplexer):合并多个信号到单一通道。 2、DEMUX(Demultiplexer):从单一通道分离出多个信号。 3、单一通道,可汇聚多个…

核心集:DeepCore: A Comprehensive Library for CoresetSelection in Deep Learning

目录 一、TL;DR 二、为什么研究核心集? 三、问题定义和如何做 3.1 问题定义 3.2 业界方法 3.2.1 基于几何的方法 3.2.2 基于不确定性的方法 3.2.3 基于误差/损失的方法 3.2.5 GraNd 和 EL2N 分数 3.2.6 重要性采样 3.2.7 基于决策边界的办法 …

MyBatis-Plus笔记-快速入门

大家在日常开发中应该能发现,单表的CRUD功能代码重复度很高,也没有什么难度。而这部分代码量往往比较大,开发起来比较费时。 因此,目前企业中都会使用一些组件来简化或省略单表的CRUD开发工作。目前在国内使用较多的一个组件就是…