首页GoXiaoMi/Gaea
// archived 2026-04-13
XiaoMi

Gaea

Database#MySQL#Middleware#Sharding#Go#Database Proxy
前往 GitHub →
2,771

// 项目简介

Gaea 是小米集团自研的基于 MySQL 协议的数据库中间件,广泛应用于手机、金融及互联网等多个业务领域。该系统支持分库分表、SQL 路由及读写分离等核心功能,并兼容 Mycat 和 Kingshard 的路由方案。项目通过集成 TiDB Parser 等成熟技术,为用户提供了包括多租户管理、连接池及配置热加载在内的丰富基础特性。

// 技术分析

Gaea 是小米自研的 MySQL 数据库中间件,旨在解决大规模业务场景下的数据库扩展与管理难题。该项目通过兼容 Mycat 和 Kingshard 的路由方案,实现了灵活的分库分表功能,并集成了 TiDB 的 SQL Parser 以确保解析的准确性。其架构设计支持多集群与多租户管理,通过 gaea-cc 与 etcd 的配合,实现了配置的集中化管理与热加载,有效提升了数据库集群的运维效率与扩展性。

// 核心亮点

01
支持分库分表功能,兼容 Mycat 和 Kingshard 的路由规则,便于现有业务迁移。
02
内置 TiDB SQL Parser,确保了对复杂 SQL 语句的精准解析与透明转发。
03
具备完善的读写分离与从库负载均衡机制,有效提升数据库的并发处理能力。
04
提供慢 SQL 与错误 SQL 指纹功能,帮助开发者快速定位并优化性能瓶颈。
05
支持多集群与多租户架构,通过 etcd 实现配置热加载,满足大规模业务的灵活部署需求。
06
内置连接池与 IP 白名单管理,在保障数据库访问安全的同时优化了连接资源利用率。

// 典型使用场景

01
支持分库分表及多种聚合函数与 Join 操作
02
实现读写分离与从库负载均衡以提升性能
03
提供多集群、多租户管理及 SQL 透明转发功能

// 快速开始

开发者可以通过查阅项目文档中的快速入门(quickstart.md)了解部署流程。建议首先配置 etcd 与 gaea-cc 以实现集群管理,随后参考配置说明(configuration.md)完成数据库节点的接入与路由规则设置。