TiDB 支持的第三方工具
注意
本文档仅列举了常见的 TiDB 支持的第三方工具,未被列入其中的第三方工具并非代表不支持,但 PingCAP 无法了解其是否使用到 TiDB 不支持的特性,从而无法保证兼容性。
TiDB 高度兼容 MySQL 协议,使得大部分适配 MySQL 的 Driver、ORM 及其他工具与 TiDB 兼容。本文主要介绍这些工具和它们的支持等级。
支持等级
PingCAP 与开源社区合作,通过三方工具提供以下支持:
- Full:表明 PingCAP 已经支持该工具的绝大多数功能兼容性,并且在新版本中对其保持兼容,将定期地对下表中记录的新版本进行兼容性测试。
- Compatible:表明由于该工具已适配 MySQL,而 TiDB 高度兼容 MySQL 协议,因此可以使用此工具的大部分功能。但 PingCAP 并未对该工具作出完整的兼容性验证,有可能出现一些意外的行为。
注意
除非明确说明,否则对于支持的 Driver 或者 ORM 框架并不包括应用端事务重试和错误处理。
如果在使用本文列出的工具连接 TiDB 时出现问题,请在 GitHub 上提交包含详细信息的 issue,以帮助在此工具的支持上得到进展。
Driver
编程语言 | 驱动 | 最新已测试版本 | 支持等级 | TiDB 适配器 | 教程 |
---|---|---|---|---|---|
C | libmysqlclient | 8.0 | Compatible | N/A | N/A |
C#(.Net) | MySQL Connector/NET | 8.0 | Compatible | N/A | N/A |
ODBC | MySQL Connector/ODBC | 8.0 | Compatible | N/A | N/A |
Go | go-sql-driver/mysql | v1.6.0 | Full | N/A | TiDB 和 Golang 的简单 CRUD 应用程序 |
Java | JDBC | 8.0 | Full | TiDB 和 Java 的简单 CRUD 应用程序 | |
JavaScript | mysql | v2.18.1 | Compatible | N/A | N/A |
PHP | mysqlnd | PHP 5.4+ | Compatible | N/A | N/A |
Python | mysql-connector-python | 8.0 | Compatible | N/A | TiDB 和 Python 的简单 CRUD 应用程序 |
mysqlclient | 2.1.1 | Compatible | N/A | TiDB 和 Python 的简单 CRUD 应用程序 | |
PyMySQL | 1.0.2 | Compatible | N/A | TiDB 和 Python 的简单 CRUD 应用程序 |
ORM
编程语言 | ORM 框架 | 最新已测试版本 | 支持等级 | TiDB 适配器 | 教程 |
---|---|---|---|---|---|
Go | gorm | v1.23.5 | Full | N/A | TiDB 和 Golang 的简单 CRUD 应用程序 |
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 | |
ent | v0.11.0 | Compatible | N/A | N/A | |
Java | Hibernate | 6.1.0.Final | Full | N/A | TiDB 和 Java 的简单 CRUD 应用程序 |
MyBatis | v3.5.10 | Full | N/A | TiDB 和 Java 的简单 CRUD 应用程序 | |
Spring Data JPA | 2.7.2 | Full | N/A | 使用 Spring Boot 构建 TiDB 应用程序 | |
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 | Compatible | N/A | N/A |
Knex.js | v1.0.7 | Compatible | N/A | N/A | |
Prisma Client | 3.15.1 | Compatible | N/A | N/A | |
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 | django-tidb | TiDB 和 Django 的简单 CRUD 应用程序 |
peewee | v3.14.10 | Compatible | N/A | TiDB 和 Python 的简单 CRUD 应用程序 | |
SQLAlchemy | v1.4.37 | Compatible | N/A | TiDB 和 Python 的简单 CRUD 应用程序 |
GUI
GUI | 最新已测试版本 | 支持等级 | 教程 |
---|---|---|---|
DBeaver | 22.1.0 | Compatible | N/A |
Navicat for MySQL | 16.0.14 | Compatible | N/A |
MySQL Workbench | 8.0 | Compatible | N/A |
IDE | 插件 | 支持等级 | 教程 |
---|---|---|---|
DataGrip | N/A | Compatible | N/A |
IntelliJ IDEA | N/A | Compatible | N/A |
Visual Studio Code | TiDE | Compatible | N/A |
MySQL | Compatible | N/A |