OceanBase 数据库是如何实现高可用的?

不同于传统数据库的主备或一主多从方案,OceanBase 数据库同样使用性价比较高、可靠性略低的服务器,但同一数据保存了多台(大于等于 3)台服务器中的半数以上服务器上(例如 3 台中的 2 台,5 台中的 3 台等),每一笔写事务也必须到达半数以上服务器才生效,因此当少数服务器故障时不会有任何数据丢失。不仅如此,传统数据库主备镜像在主库发生故障时,通常需要外部工具或人工把备库升级成主库,而 OceanBase 数据库底层实现了 Paxos 高可用协议,在主库故障后,剩余的服务器会很快自动选举出新的主库,并继续提供服务。在多次蚂蚁机房断网演练中,OceanBase 数据库都做到了自动切换且完全不丢数据,证明了 OceanBase 数据库高可用架构的技术优越性。