Third-Party Tools Supported by TiDB
TiDB is highly compatible with the MySQL protocol, so most of the MySQL drivers, ORM frameworks, and other tools that adapt to MySQL are compatible with TiDB. This document focuses on these tools and their support levels for TiDB.
Support Level
PingCAP works with the community and provides the following support levels for third-party tools:
- Full: Indicates that TiDB is already compatible with most functionalities of the corresponding third-party tool, and maintains compatibility with its newer versions. PingCAP will periodically conduct compatibility tests with the latest version of the tool.
- Compatible: Indicates that because the corresponding third-party tool is adapted to MySQL and TiDB is highly compatible with the MySQL protocol, so TiDB can use most features of the tool. However, PingCAP has not completed a full test on all features of the tool, which might lead to some unexpected behaviors.
If you encounter problems when connecting to TiDB using the tools listed in this document, please submit an issue on GitHub with details to promote support on this tool.
Driver
Language | Driver | Latest tested version | Support level | TiDB adapter | Tutorial |
---|---|---|---|---|---|
Go | Go-MySQL-Driver | v1.6.0 | Full | N/A | Connect to TiDB with Go-MySQL-Driver |
Java | JDBC | 8.0 | Full | Connect to TiDB with JDBC |
Language | Driver | Latest tested version | Support level | TiDB adapter | Tutorial |
---|---|---|---|---|---|
Go | Go-MySQL-Driver | v1.6.0 | Full | N/A | Connect to TiDB with Go-MySQL-Driver |
Java | JDBC | 8.0 | Full | Connect to TiDB with JDBC |
ORM
Language | ORM framework | Latest tested version | Support level | TiDB adapter | Tutorial |
---|---|---|---|---|---|
Go | gorm | v1.23.5 | Full | N/A | Connect to TiDB with GORM |
beego | v2.0.3 | Full | N/A | N/A | |
upper/db | v4.5.2 | Full | N/A | N/A | |
xorm | v1.3.1 | Full | N/A | N/A | |
Java | Hibernate | 6.1.0.Final | Full | N/A | Connect to TiDB with Hibernate |
MyBatis | v3.5.10 | Full | N/A | Connect to TiDB with MyBatis | |
Spring Data JPA | 2.7.2 | Full | N/A | Connect to TiDB with Spring Boot | |
jOOQ | v3.16.7 (Open Source) | Full | N/A | N/A | |
Ruby | Active Record | v7.0 | Full | N/A | N/A |
JavaScript / TypeScript | sequelize | v6.20.1 | Full | N/A | N/A |
Prisma Client | 4.16.2 | Full | N/A | N/A | |
Python | Django | v4.1 | Full | django-tidb | Connect to TiDB with Django |
SQLAlchemy | v1.4.37 | Full | N/A | Connect to TiDB with SQLAlchemy |
Language | ORM framework | Latest tested version | Support level | TiDB adapter | Tutorial |
---|---|---|---|---|---|
Go | gorm | v1.23.5 | Full | N/A | Connect to TiDB with GORM |
beego | v2.0.3 | Full | N/A | N/A | |
upper/db | v4.5.2 | Full | N/A | N/A | |
xorm | v1.3.1 | Full | N/A | N/A | |
Java | Hibernate | 6.1.0.Final | Full | N/A | Connect to TiDB with Hibernate |
MyBatis | v3.5.10 | Full | N/A | Connect to TiDB with MyBatis | |
Spring Data JPA | 2.7.2 | Full | N/A | Connect to TiDB with Spring Boot | |
jOOQ | v3.16.7 (Open Source) | Full | N/A | N/A | |
Ruby | Active Record | v7.0 | Full | N/A | N/A |
JavaScript / TypeScript | sequelize | v6.20.1 | Full | N/A | N/A |
Prisma Client | 4.16.2 | Full | N/A | N/A | |
Python | Django | v4.1 | Full | django-tidb | Connect to TiDB with Django |
SQLAlchemy | v1.4.37 | Full | N/A | Connect to TiDB with SQLAlchemy |
GUI
GUI | Latest tested version | Support level | Tutorial |
---|---|---|---|
DBeaver | 23.0.3 | Full | Connect to TiDB with DBeaver |