GBase 8a在主副本都故障,且无法修复时的处理方案

GBase 8a是通过副本机制来提供高可用保障,但如果出现主副本数据均损坏且无法修复呢?按标准逻辑,有关的表将无法保障完整性,所有相关表查询将报错。本文提供一种在【允许数据丢失,查询结果不完整的前提下】,对现有表的剩余数据可以查询的方法,以及通过缩容,保证新建的表可以正常使用的方案,以及测试过程。

GBase 8a在硬件原因导致主副本都损坏用户允许数据部分丢失时的处理方案

GBase 8a是将数据分散到多台服务器来实现MPP架构,每个分片数据通过副本来保证高可用,最高允许2个副本。如果因意外,比如多台服务器RAID卡故障,服务器损毁等肯定无法恢复数据的情况,导致分片所在的所有主副本都不可用,此时虽然其它没有损坏的服务器数据是正常的,但在集群层因部分分片数据丢失而无法查询(完整性)。 如果用户允许这部分无法恢复的数据丢失,其它数据希望能继续查询,新服务器能替换现有故障节点,新的表能继续提供正常服务时,本文提供了一个处理方案。

GBase 扩容操作重分布完成后清理旧的distribution时报错FCan not drop nodedatamap EventLog is using distribution

GBase 8a在扩容操作中,当所有表已经全部重分布到新的分布策略distribution以后,老的distribution就可以用refreshnodedatamap drop删除了。 但如果此时有些表存在event,且使用的老的策略,则会出现这个错误:Can not drop nodedatamap EventLog is using distribution。此时需要将原有的event处理完成才可以继续操作。

GBase 8a采用sudo安装时出现输入密码等待300秒超时现象的原因

GBase 8a支持sudo安装,但现有版本不支持在执行sudo命令时输入密码,否则操作系统在等待密码输入[sudo] password for gbase的信息,而安装程序在等待命令返回,直到300秒的超时时间到了报错。现有解决方案是调整操作系统sudo策略,让gbase用户执行sudo时无需输入密码,包括第一次运行sudo。

GBase 8a 安装ipv6时报错The number of coordinateHost and coordinateHostNodeID is inconsistent

GBase 8a 支持IPV6,同时内部没有使用字符串,而是用nodeid一个数字来代替。其中ipv4是从IP地址计算出来的,而IPV6则需要用户指定一个nodeid,,所以有几个管理节点的IPV6的地址数量,必须对应指定几个唯一的管理节点的nodeid, 如果不同,则报不一致的错误。The number of coordinateHost and coordinateHostNodeID is inconsistent

GBase 8a查看和强行释放SQL持有锁的方法

GBase 8a在执行时。为避免并发冲突保证一致性,会持有一些锁来保证自己需要的资源在执行期间不会出现问题。锁在SQL执行完毕后会自动释放掉。在某些特殊场景下,特别是一些老版本集群,出现需要强行释放掉锁的需求,比如SQL长时间无法结束,而该SQL持有的锁又导致其它的SQL无法正常运行,同时环境又不能重启节点服务时,可以考虑本文的方法强行释放SQL持有的锁。