OceanBase 数据库中 RootService 服务遇到的常见问题有哪些?

本文针对 OceanBase 数据库中 RootService 服务的一些常见问题进行解答。

rootservice 和 observer 不是同一进程,但可部署在同一机器上吗?

RootService 是 OceanBase 数据库内部的一个服务,不是进程,所以在主机上使用

ps -ef

命令是看不到 rootservice 这个进程的。

每个 Zone 至少有 1 台 RootService 对吗?

每个主机只能看到一个 observer 进程,是看不到 rootservice 这个进程的。

多 Zone 的 RootService 谁是主,谁是从?是投票选举的吗?

RootService 服务依托于一个系统表(分区),表是有三副本高可用的,那么 RootService 也会有。多个 RootService 模块之间存在从属关系,同时只有一个 RootService 提供服务。在创建 OceanBase 集群时,会为集群指定主 RootService 所在的机器;当主 RootService 所在的节点宕机时,会进行选举。

一个 Zone 内的 RootService 服务都故障了,这个 Zone 还可以使用吗?

可以使用。整个集群就只有一台 OBServer 的 RootService 提供服务,但 RootService 具有高可用特性。OceanBase 的使用是整个集群中的租户提供服务,不是单个 Zone 提供服务。