暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

openGauss高可用之主、备机

openGauss小助手 2021-10-19
897
为了保证故障的可恢复,需要将数据写多份,设置主备多个副本,通过日志进行数据同步;可以实现在节点故障、停止后重启等情况下,保证故障之前的数据无丢失,以满足ACID特性。openGauss可以支持一主多备模式,备机接收主机发送过来的WAL并进行回访,保证和主机的数据一致;同时在主机发生故障时,备机可以参照升主机制进行升主机操作。备机过多会消耗过量的资源,而备机太少会降低系统的可用性。
主备机之间可以通过switchover操作进行角色切换,主机故障后可以通过failover操作对备机进行升主机操作。
初始化安装或者备份恢复等场景中,需要根据主机重建备机的数据,此时需要Build(构建)功能,将主机的数据和WAL发送到备机。主机故障后重新以备机的角色加入时,也需要Build功能将其数据和日志与新主拉齐。Build包含全量Build和增量Build;全量Build要全部依赖主机数据进行重建,复制的数据量比较大,耗时比较长;而增量Build只复制差异文件,复制的数据量比较小,耗时比较短。一般情况下,优先选择增量Build进行故障恢复;如果增量Build失败,再继续执行全量Build,直至故障恢复。
openGauss除了流复制主备双机外,还支持逻辑复制。在逻辑复制中把主库称为源端库,备库称为目标端数据库。源端数据库根据预先指定好的逻辑解析规则对WAL文件进行解析,把DML操作解析成一定格式的逻辑日志(例如可以解析成标准SQL语句)。源端数据库把逻辑日志发给目标端数据库,目标端数据库收到后进行回放,从而实现数据同步。逻辑复制只有DML操作。逻辑复制可以实现跨版本复制、异构数据库复制、双写数据库复制和表级别复制等。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论