数据库日志复制技术方案三(单向、半双工双向、全双工双向)
数据库容灾也称数据库双活、数据库复制,即在本地或异地部署一个与生产库完全相同的灾备数据库,当生产库由于各种原因(错误操作、系统软件错误、病毒、硬件故障、断电、火灾、地震等)发生故障时,灾备数据库可以立刻接管原有应用,对外正常提供服务。进行数据库容灾需要考虑以下问题:
1、 本地容灾还是异地容灾,异地容灾的网络带宽及稳定性。
2 、 灾备数据库是否需要在线查询,是否需要效验比对某些核心数据是否与生产库一致。
3、 RTO(恢复时间目标,指生产库发生故障到灾备库投入运行期望的时间)、RPO(数据恢复点目标,指生产系统所能容忍的数据丢失量)。
4 、 备份模式选择,见拓扑图1 单向备份模式(active/standby)还是双向互备模式。其中双向互备模式又分为半双工和全双工,见拓扑图2 半双工备份模式在任一时间点依然是单向模式(active/standby),只有一个数据库接受业务请求,当主库故障时允许主备自动切换。见拓扑图3全双工模式(active /active),用于双业务中心异地互备,两个数据库同时接受业务请求。对于全双工模式需要考虑数据是否存在主键冲突。
5 、 部署及维护成本,灾备库是否支持异构(不同操作系统、不同数据库版本)、是否需要在主备库安装代理程序或在数据库额外创建对象、是否需要调整表结构等。应用系统升级是否需要重新配置备份过程,是否需要人工干预等。
拓扑图1 单向备份模式
拓扑图2:半双工双向模式
拓扑图3: 全双工双向模式
灵蜂数据库复制软件 Beedup 提供数据库(Oracle/SQL Server/DB2/MySQL/PostgreSQL)容灾功能,具备以下特点:
1、 Beedup采用TCP连接主从数据库,支持本地或异地容灾。软件读取解析主库归档或在线日志,还原其中的DDL及DML操作在备库执行,通过将软件部署到主库所属网络,可以在备份时有效降低网络负载。软件提供断点机制增量读取解析日志,可以忍受苛刻的网络条件。
2 、Beedup采用SQL接口向从库写入DML及DDL,从库实时在线可用。另外软件提供主从表的差异比对功能,可以随时效验主从数据一致性。
3、 Beedup采用事务单元复制主库变化到从库,主库事务提交后,软件立即读取解析事务并复制变化到从库,整个过程秒级完成。当主库发生故障时,可以直接修改从库IP为主库IP接管其上业务。
4 、Beedup支持active/standby和active /active备份模式,对于active /active模式的自增主键冲突,无需调整业务系统,Beedup提供自增值到目标库的重新计算并更新相关依赖信息的功能。
5、 Beedup采用JDBC读写主备数据库,对数据库运行平台及版本无要求,当生产库采用高性能设备时,备份库可以选择普通商用配置。软件部署灵活,既可部署于主服务器,也可部署于备份服务器,或者部署到可以TCP连通主备服务器的其它任意机器。软件对主库不需要任何写入操作,通过读取解析主库归档或在线日志复制事务到备份库,对于表结构、视图、存储过程、触发器等DDL操作均可自动备份,无需人工干预。
双业务中心数据库 双活互备示意图:
数据库复制产品 Beedup 日志解析同步功能(CDC): 用户数据库SQLserver新增17亿多条数据运行中反馈的截图:
posted on 2020-09-30 18:13 changchengchang 阅读(514) 评论(0) 编辑 收藏 举报