DevOps开发运维
成长之路

DM8-数据守护(Data Watch)概述、特性

概述

DM数据守护Data Watch的实现原理非常简单:将主库产生的redo日志传输到备库,备库接收并重新应用redo日志,从而实现备库与主库的数据同步。DM数据守护的核心思想是监控数据库状态,获取主备库数据同步情况,,为redo日志传输与重演过程中出现的各种异常情况提供统一系列的解决方案。
DM数据守护系统结构,主要由主库,备库,redo日志,redo日志传输、redo日志重演、守护进程dmwatcher、监视器dmmonitor组成。

主库:

Primary模式,提供完整数据库服务的实例,一般来说主库是用来直接支撑应用系统的生产库。

备库:

Standby模式,提供只读数据库服务的实例,备库除了用于容灾,还可以提供备份,查询等只读功能,并且备库还执行临时表的insert,delete,update操作。
备库支持临时表修改主要基于两个因素,
1、临时表数据的修改不产生redo日志,主库对临时表的修改无法同步到备库
2、可以提供更大灵活性,适应更多应用场景

根据数据同步情况,备库又可以分为可切换备库和不可切换备库。可切换备库是指,主备库之间数据完全同步,主库发生故障、备库切换为主库后,不会在成任何数据丢失的备库。

redo日志

redo日志记录物理数据页内容变动情况,实数据库十分重要的一个功能,在数据库系统故障重启时,可用redo日志可以把数据恢复到故障钱的状态。
redo日志也是数据守护的实现基础,数据库中insert,delete,update等dml操作以及create table等ddl操作最终都会体现为对某一个或者多个物理数据页的修改,因此备库通过重做redo日志可以与主库数据保持一致。

redo日志传输

主备库之间的redo日志传输,以日志包RLOG_PKG为单位,主库通过MAL系统发送redo日志到备库。各种不同数据守护类型的区别,就在于RLOG_PKG的发送时间,以及备库收到日志后的处理策略。

redo日志重演

redo日志重演的过程,就是备库收到主库发送的redo日志后,在物理数据页上,重新修改数据的过程,redo日志重演由专门的redo日志重演服务完成,重演服务严格按照redo日志产生的先后顺序,解析redo日志,修改相应的物理数据页,并且重演过程中备库会生成自身的redo日志写入联机日志文件。

守护进程

守护进程时数据守护系统的核心工具,监控数据库实例的运行状态和主备库数据同步情况,在出现故障时启动各种处理预案。守护进程时各种消息的中转站,接收数据库实例、其他守护进程、以及监视器发送的各种消息,同时,守护进程也会将收到的数据库实例西消息转发给其他守护进程和监视器,守护进程必须和被守护的数据库实例部署在同一台机器上。

监视器

监视器dmmonitor用来监控守护系统内守护进程、数据库实例信息,执行用户输入命令、监控实例故障、实现自动切换等。监视器一般配置在数据库实例和守护进程以外的机器上。

主要特性

完整功能的主库

主库提供完整的数据库服务,与普通单节点数据库相比,主要的功能限制包括:不支持修改表空间文件名、不支持修改arch_ini参数。

活动的备库

基于独特的字典缓存技术和日志重演技术,备库在open状态下执行数据同步,是真正意义上的热备库;在实现异地容灾的同时,用户可以只读访问备库,执行报表生成、数据备份等功能,减轻主库的系统负载,提高资源利用率。

多重数据保护

每个备库都是一个完成的数据库备份,可以同时配置多个备库,为数据安全提供全方位的保护。

高可用性

主库出现故障时,可以快速将备库切换为主库,继续提供数据库服务,确保数据库服务不中断,切换过程一般在数秒钟之内完成。

多种守护模式

提供自动切换和手动切换两种守护模式,满足用户不同需求,其中,配置自动切换的前提是已经部署确认监视器,在提供第三方机器部署确认监视器情况下,可以配置为故障自动切换模式,主库出现故障时,系统自动将备库切换为主库对外提供数据库服务。

多种守护类型

守护进程可以配置为全局守护(提供实时主备,MPP主备,读写分离集群功能)或者本地守护,使用各种应用需求

故障自动重连

配置、使用连接服务名访问访问数据库,在发生主备库切换后,接口会自动将连接迁移到新的主库上。

故障库自动重加入

主库故障,发生主备库切换。故障主库重启后,可以自动切换为standby模式,作为备库重新加入数据守护系统。

历史数据自动同步

故障备库恢复后,可以自动同步历史数据,无需用户干预,并在同步完成以后,自动恢复为可切换备库。

自动负载均衡

配置读写分离集群,可以将只读操作分流到备库上执行,减轻主库访问压力,提高数据库系统的吞吐量。读写分离的过程由JDBC等接口配合服务器自动完成,无需用户干预,也不需要修改应用程序。

滚动升级

可以在不中断数据库服务的情况下,滚动的对数据守护系统中的主备库进行数据库软件版本升级。

灵活的搭建方式

可以在不中断数据库服务的情况下,将单节点数据库升级为主备系统。DM提供多种工具来完成数据守护搭建,如SHELL脚本或DEM工具,均能方便的完成数据守护搭建。

完备的监控工具

通过命令行监控工具,dmmonitor\DEM工具可以实时更新、监控主备库的状态和数据同步情况。

完善的监控接口

提供完善的数据守护监控接口,可以定制监控项,并方便地集成到应用系统中。

丰富的守护命令

提供主备库切换、强制接管等功能,通过简单的命令就可以实现主备库角色互换、故障接管等功能。
支持DMDSC守护
支持DMDSC和DMDSC\DMDSC和单节点、单节点和dmdsc之间互为主备的数据守护环境。

内容均来自官方文档!

赞(0)

评论 抢沙发

评论前必须登录!

 

LNMP社群 不仅仅是技术

关于我们网站地图