数据库运维
记录DBA学习成长历程

DM8-数据守护实时主备

文章目录

实时主备系统由主库、实时备库、守护进程和监视器组成。通过部署实时主备系统,可以及时检测并处理各种硬件故障、数据库实例异常,确保持续提供数据库服务。

主要功能

1、实时数据同步:主备库通过实时归档完成数据同步,实时归档要主库将RLOG_PKG发送到备库后,再将RLOG_PKG写入本地联机Redo日志文件。但要注意的是,备库确认收到主库发送的Redo日志,并不保存备库已经完成重演这些redo日志,因此主备库之间的数据同步存在一定的时间差。
2、主备库切换:主备库正常运行过程中,可以通过监视器的switchover命令,一键完成主备库角色转换,主备库切换功能可以确保在软硬件升级,或系统维护时,提供不间断的数据库服务。
3、自动故障处理:备库故障,不影响主库正常提供数据库服务,守护进程自动通知主库修改实时归档为Invalid状态,将实时备库失效。
4、自动数据同步:备库故障恢复后,守护进程自动通知主库发送归档redo日志,重新进行主备库数据同步。并在历史数据同步后,修改主库的实时归档状态为Valid,恢复实时备库功能。
备库接管后,原主库故障恢复后守护进程自动修改原主库的模式为standby,并重新作为备库加入主备系统。
5、备库接管:主库发生故障后,可以通过监视器的takeover命令,将备库切换为主库,继续对外提供服务。如果配置为自动切换模式,确认监视器可以自动检测主库故障,并通知备库接管,这个过程不需要人工干预。
6、备库强制接管:备库执行takeover命令不成功时,但主库可能由于硬件损坏等原因无法马上恢复,为了及时恢复数据库服务,DM提供了takeover force命令,强制将备库切换为主库。但需要由用户确认主库故障前,主库与接管备库的数据是一致的(主库到备库的归档是Valid状态),避免引发守护进程组分裂。
7、读写分离访问:在备库查询的实时性要求不高的条件下,实时主备也可以配置接口的读写分离属性访问,实现读写分离功能特性。
!!!!!!!!!!执行 Takeover Force 有可能引发组分裂,而 Takeover 命令是在确保不 会产生组分裂情况下才允许执行。
主库生成Redo日志,当触发日志写文件操作后,日志线程先将RLOG_PKG发送到备库,备库接收后进行合法性校验(日志是否连续、备库状态是否open等),不合法则返回错误信息,合法则作为keep_pkg保留在内存中,原有keep_pkg的redo日志加入apply任务进行redo日志重演,并响应主库日志接收成功。

内容来自官方文档!

赞(0)
MySQL学习笔记 » DM8-数据守护实时主备