云数据库 SQL Server 双节点本地盘实例支持的版本为 SQL Server 2008 R2、2012、2014、2016、2017、2019 Enterprise,双节点云盘实例支持的版本为 SQL Server 2008 R2、2012、2014、2016、2017、2019、2022 Enterprise,其中,不同版本的主备架构有所区别,分为以下两种情形。
情形一
若版本为 SQL Server 2008 R2、2012、2014、2016 Enterprise,则双节点实例的主备架构由一主一镜像(Mirror)的 SQL Server 数据库组成,跨机架/跨可用区部署,每个库对应一组监控 Agent,通过心跳对数据库进行实时监控。
腾讯云管理集群:由独立部署的决策调度集群和配置集群组成,作为集群的管理调度中心,主要管理数据库节点组、接入网关集群、对象存储的正常运行。
对象存储:提供数据灾备服务,提供冷备数据。
接入网关集群:对外提供唯一的 IP,如果数据节点发生切换,用户连接实例的 IP 不会改变。
只读实例的扩展通过发布订阅模式实现。
说明
镜像(Mirror)具有完整的数据副本,本身不提供读写服务,通过接收来自 Principal 的更新日志实现数据同步,允许创建快照实现报表;在镜像集群中,Principal 和 Mirror 的数据同步依靠事务日志来实现,SQL Server 的事务日志是 Database 级别的,非实例级别,每个 Database 都具有单独的事务日志,SQL Server 的镜像是基于 Database 层面实现。
情形二
若版本为 SQL Server 2017、2019、2022 Enterprise,则双节点实例的主备架构采用 Always On 架构(包括一主一备),主备跨机架/跨可用区部署,每个库对应一组监控 Agent,通过心跳对数据库进行实时监控。
腾讯云管理集群:由独立部署的决策调度集群和配置集群组成,作为集群的管理调度中心,主要管理数据库节点组、接入网关集群、对象存储 COS 的正常运行。
对象存储:提供数据灾备服务,提供冷备数据。
接入网关集群:对外提供唯一的 IP,如果数据节点发生切换,用户连接实例的 IP 不会改变。
说明
Always On 的基本同步过程:
Primary 节点的日志(Commit、Log Block Write)会从 Log Cache 刷到磁盘,同时 Primary 节点的 Log Capture 也会将日志发送到其它所有 Replica 节点,对应节点的 Log Receive 线程将收到的日志同样从 Log Cache 刷到磁盘,最后由 Redo Thread 应用这些日志刷到数据文件。