ToB企服应用市场:ToB评测及商务社交产业平台

标题: DM数据库主备守护集群原理 [打印本页]

作者: 王柳    时间: 2024-9-7 17:16
标题: DM数据库主备守护集群原理
本文章根据概述、术语解释、LSN简介、数据库状态等方面,先容了DM数据库DW集群的原理。

  一、概述
   DM 数据守护(Data Watch)是一种集成化的高可用、高性能数据库办理方案,是数据库异地容灾的首选方案。通过部署 DM 数据守护,可以在硬件故障(如磁盘损坏)、自然灾难(地动、火灾)等极端情况下,避免数据损坏、丢失,保障数据安全,并且可以快速恢复数据库服务,满意用户不间断提供数据库服务的要求。
  二、实现原理
   DM数据守护的实现原理:
  将主库产生的Redo日志传输到备库,备库吸收并重新应用Redo日志,从而实现备库与主库的数据同步
  DM数据守护的核心思想:监控数据库状态,获取主备库数据同步状态,为Redo日志传输与重演过程中出现的各种异常情况提供一系列办理方案
  
  三、集群架构图
DM数据守护系统布局参考图如下所示:由主库、备库、Redo日志、Redo日志传输、Redo日志重演、守护历程、监视器构成

四、术语解释
  4.1 主库
   Primary 模式,提供完整数据库服务的实例,一样寻常来说主库是用来直接支撑应用系统的生产库。
    4.2 备库
   Standby 模式,提供只读数据库服务的实例。备库除了用于容灾,还可以提供备份、查询等只读功能,并且备库还支持临时表的 Insert/Delete/Update 操纵。
  ####备库支持临时表修改告急基于两个因素:1.临时表数据的修改不会产生 Redo 日志,主库对临时表的修改无法同步到备库;2.可以提供更大机动性,适应更多应用场景。
    4.3 Redo日志
   Redo 日志记录物理数据页内容变动情况,在数据库系统故障重启时,利用 Redo 日志可以把数据恢复到故障前的状态。
  数据库中 Insert、Delete、Update 等 DML 操纵以及 Create TABLE 等 DDL 操纵终极都会表现为对某一个或者多个物理数据页的修改,因此备库通过重做 Redo 日志可以与主库数据保持同等。
    4.4 Redo日志传输
   主备库之间Redo日志传输,以日志包RLOG_PKG为单元,主库通过MAL系统发送Redo日志到备库
    4.5 Redo日志重演
   备库收到出库发送的Redo日志后,在数据页上,重新修改数据的过程,重演服务严格按照日志产生先后次序,分析日志修改对应的物理数据页,重演过程备库天生自身的Redo日志写入联机日志文件。
    4.6 守护历程
   守护历程是数据守护系统的核心工具,监控数据库实例的运行状态和主备库数据库同步情况。是各种消息的中转站,守护历程会吸收数据库实例、其他守护历程、监视器发送的各种消息
  注意:守护历程必须和被守护的数据库实例部署在同一台呆板上
  

    4.7监视器
   用于监控守护系统内守护历程、数据库实例信息,实行用户输入命令、监控实例故障、实现主动切换等
  注意:监视器一样寻常设置在数据库实例和守护历程以外的呆板上,
  五、系统特性
   
  六、数据库模式
   Normal模式:操纵 没有限定,正常天生当地归档,不发送及时归档、即时归档和异步归档
  Primary模式:操纵部门受限,不支持修改表空间文件名、不支持修改 arch_ini 参数。正常天生当地归档,支持及时归档(Realtime)、即时归档(Timely)和异步归档(Async)。Primary 模式下,对临时表空间以外的所有的数据库对象的修改操纵都强制天生 Redo 日志。
  Standby模式:可实行数据库联机备份、查询等只读数据库操纵,正常天生当地归档,正常发送异步归档Redo日志,但及时归档、即时归档均强制失效
    切换数据库模式:
  ALTER DATABASE PRIMARY;  --切换为primary
  ALTER DATABASE STANDBY; --切换为STandby
  ALTER DATABASE NORMAL;--切换为Normal模式
  七、数据库状态
   (1)Startup   --系统刚启动时设置为Startup状态
  (2)After Redo   --系统启动过程中联机日志重做完成后,回滚活动事件前设置为 After Redo 状态。非 Standby 模式的实例在实行 alter database open 操纵前,也会将系统设置为 After Redo 状态。
  (3)Open状态  --数据库处于正常提供服务状态,但不能举行归档设置等操纵
  (4)Mount状态   --不能修改数据,不能访问表、视图等数据库对象,但可以实行修改归档设置、控制文件和修改数据库模式等操纵,也可以实行一些不修改数据库内容的操纵,比如查询动态视图或者一些只读的系统过程。由于 Mount 状态不天生 PWR 日志,因此数据页可以正常刷盘,也正常推进检查点。
  (5)Suspend状态  --数据库在 Suspend 状态下,可以访问数据库对象,甚至可以修改数据,但限定 Redo 日志刷盘,一旦实行 COMMIT 等触发 Redo 日志刷盘的操纵时,当前操纵将被挂起。
  //**********
  一样寻常在修改归档状态之前将系统切换为 Suspend 状态,比如备库故障恢复后,在历史数据(归档日志)同步完成后,必要重新启用及时归档功能时:
    (6)Shutdown状态  --1. Open 状态与 Mount 状态可以相互切换;2. Open 状态与 Suspend 状态可以相互切换;3. Mount 和 Suspend 状态不能直接转换;4. 其他状态为系统内部状态,用户不能主动干预。
  
  

注意:当系统处于Primary/Standby模式时,必须强制加上FORCE子句
   ALTER DATABASE OPEN [FORCE];    --加上FORCE改为强制性的
  ALTER DATABASE MOUNT;   --将数据库修改为Mount状态
  ALTER DATABASE SUSPEND;   --将数据库修改为Suspend状态
  八、LSN简介
   LSN(Log Sequence Number)是由系统主动维护的 Bigint 类型数值,具有主动递增、全局唯一特性,每一个 LSN 值代表着 DM 系统内部产生的一个物理事件。物理事件(Physical Transaction,简称 ptx)是数据库内部一系列修改物理数据页操纵的聚集,与数据库管理系统中事件(Transaction)概念相对应,具有原子性、有序性、无法撤销等特性。
  告急包含以下几种类型的LSN:
   (1)CUR_LSN:是系统已经分配的最大 LSN 值。物理事件提交时,系统会为其分配一个唯一的 LSN 值,大小等于 CUR_LSN + 1,然后再修改 CUR_LSN=CUR_LSN+1。
  (2)FILE_LSN:是已经写入联机 Redo 日志文件的日志包的最大 LSN 值。每次将 Redo 日志包 RLOG_PKG 写入联机 Redo 日志文件后,都要修改 FILE_LSN 值。
  (3)FLUSH_LSN:是已经发起日志刷盘哀求,但还没有真正写入联机 Redo 日志文件的最大 LSN 值。
(4)CKPT_LSN:是检查点 LSN,所有 LSN <= CKPT_LSN 的物理事件修改的数据页,都已经从 Buffer 缓冲区写入磁盘,CKPT_LSN 由检查点线程负责调整。
  (5)APPLY_LSN:是备库已写入联机 Redo 日志文件的日志包的原始最大 LSN 值,此 LSN 取自主库对应的原始日志包中的最大 LSN 值。如果主库是 DMDSC 集群,备库分别为主库每一个节点维护一个 APPLY_LSN。
  (6)RPKG_LSN:是备库重演 LSN,表示备库已经重演完成的最大 LSN
  注意:是DSC集群情况下,数据守护页界说了如下的LSN:
  

九、设置文件
   
  十、数据守护使用
   10.1 正常运行状态
  守护系统正常运行时,同一个守护历程组中,只有一个主库,其他的都是备库。
  主库处于 Open 状态,主库守护历程也处于 Open 状态,当地没有守护历程控制文件,其内存值是 Valid 有效状态。
  所有备库也处于 Open 状态,所有备库守护历程处于 Open 状态,当地没有守护历程控制文件,其内存值是 Valid 有效状态。
  主库到所有备库的归档也都处于 Valid 有效状态。
  MPP 主备系统中,所有主库的 dmmpp.ctl 都处于同等状态。
  10.2 数据守护启动
  (1)Normal模式下DM数据库默认以Open状态启动,可以利用前台方式+MOUNT方式启动到Mount状态。
  (2)Primary/Standby模式的库启动后主动切换为Mount状态,因此数据守护系统启动时,所有实例为Mount状态
  对于Local守护类型的守护历程:直接Open数据库实例,并修改守护历程状态为Open
  对于Global守护类型的守护历程:对备库,如果可长途加入恣意一个库,则答应将其Open,对主库,如果长途所有库都可加入自己,则答应将其Open
  10.3 强制Open数据库
  注意:强制主库Open轻易产生守护历程组分裂
  如果数据库 A 是 Standby 模式,强制 Open 的实行流程如下:
    如果数据库 A 是 Primary 模式,强制 Open 的实行流程如下:
        10.4 关闭数据守护系统
  通过监视器实行stop group命令关闭数据守护系统:
    手动方式关闭数据守护系统:严格次序
    更多有关达梦守护集群技术知识请移步达梦数据库官方地点: https://eco.dameng.com

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4