title | summary |
---|---|
Third-Party Libraries Support Maintained by PingCAP |
Learn about third-party libraries support maintained by PingCAP. |
TiDB is highly compatible with the MySQL 5.7 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.
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.
Warning:
Unless specified, support for Application retry and error handling is not included for Driver or ORM frameworks.
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.
Language | Driver | Latest tested version | Support level | TiDB adapter | Tutorial |
---|---|---|---|---|---|
C | MySQL Connector/C | 6.1.11 | Full | N/A | N/A |
C#(.Net) | MySQL Connector/NET | 8.0.28 | Compatible | N/A | N/A |
C#(.Net) | MySQL Connector/ODBC | 8.0.28 | Compatible | N/A | N/A |
Go | go-sql-driver/mysql | v1.6.0 | Full | N/A | Build a Simple CRUD App with TiDB and Golang |
Java | JDBC | 5.1.46; 8.0.29 | Full | 5.1.46: N/A; 8.0.29: pingcap/mysql-connector-j | Build a Simple CRUD App with TiDB and Java |
JavaScript | mysql | v2.18.1 | Compatible | N/A | N/A |
PHP | MySQL Connector/PHP | 5.0.37 | Compatible | N/A | N/A |
Python | MySQL Connector/Python | 8.0.28 | Compatible | N/A | N/A |
Language | ORM framework | Latest tested version | Support level | TiDB adapter | Tutorial |
---|---|---|---|---|---|
Go | gorm | v1.23.5 | Full | N/A | Build a Simple CRUD App with TiDB and Golang |
Go | beego | v2.0.3 | Full | N/A | N/A |
Go | upper/db | v4.5.2 | Full | N/A | N/A |
Go | xorm | v1.3.1 | Full | N/A | N/A |
Java | Hibernate | 6.1.0.Final | Full | N/A | Build a Simple CRUD App with TiDB and Java |
Java | MyBatis | v3.5.10 | Full | N/A | Build a Simple CRUD App with TiDB and Java |
Java | Spring Data JPA | 2.7.2 | Full | N/A | Build a TiDB Application Using Spring Boot |
Java | jOOQ | v3.16.7 (Open Source) | Full | N/A | N/A |
JavaScript/TypeScript | sequelize | v6.20.1 | Compatible | N/A | N/A |
JavaScript/TypeScript | Knex.js | v1.0.7 | Compatible | N/A | N/A |
JavaScript/TypeScript | Prisma Client | 3.15.1 | Compatible | N/A | N/A |
JavaScript/TypeScript | TypeORM | v0.3.6 | Compatible | N/A | N/A |
PHP | laravel | v9.1.10 | Compatible | laravel-tidb | N/A |
Python | Django | v4.0.5 | Compatible | N/A | N/A |
Python | peewee | v3.14.10 | Compatible | N/A | N/A |
Python | PonyORM | v0.7.16 | Compatible | N/A | N/A |
Python | SQLAlchemy | v1.4.37 | Compatible | N/A | N/A |
GUI | Latest tested version | Support level | Tutorial |
---|---|---|---|
DBeaver | 22.1.0 | Compatible | N/A |
Navicat for MySQL | 16.0.14 | Compatible | N/A |
IDE | Latest tested version | Support level | Tutorial |
---|---|---|---|
DataGrip | N/A | Compatible | N/A |
IntelliJ IDEA | N/A | Compatible | N/A |