TiDB 功能概览

本文列出了 TiDB 功能在不同版本中的支持变化情况,包括长期支持版本 (LTS) 和最新的 LTS 版本之后的开发里程碑版本 (DMR)

数据类型,函数和操作符

数据类型,函数,操作符8.48.38.28.17.57.16.56.15.45.35.25.1
数值类型YYYYYYYYYYYY
日期和时间类型YYYYYYYYYYYY
字符串类型YYYYYYYYYYYY
JSON 类型YYYYYYYEEEEE
向量数据类型ENNNNNNNNNNN
控制流程函数YYYYYYYYYYYY
字符串函数YYYYYYYYYYYY
数值函数与操作符YYYYYYYYYYYY
日期和时间函数YYYYYYYYYYYY
位函数和操作符YYYYYYYYYYYY
Cast 函数和操作符YYYYYYYYYYYY
加密和压缩函数YYYYYYYYYYYY
向量函数和操作符ENNNNNNNNNNN
信息函数YYYYYYYYYYYY
JSON 函数YYYYYYYEEEEE
聚合函数YYYYYYYYYYYY
窗口函数YYYYYYYYYYYY
其他函数YYYYYYYYYYYY
操作符YYYYYYYYYYYY
字符集和排序规则 1YYYYYYYYYYYY
用户级别锁YYYYYYYYNNNN

索引和约束

索引和约束8.48.38.28.17.57.16.56.15.45.35.25.1
表达式索引 2YYYYYYYEEEEE
列式存储 (TiFlash)YYYYYYYYYYYY
使用 FastScan 加速 OLAP 场景下的查询YYYYYYENNNNN
RocksDB 引擎YYYYYYYYYYYY
Titan 插件YYYYYYYYYYYY
Titan Level MergeEEEEEEEEEEEE
使用 bucket 提高数据扫描并发度EEEEEEEENNNN
不可见索引YYYYYYYYYYYY
复合主键YYYYYYYYYYYY
CHECK 约束YYYYYNNNNNNN
唯一约束YYYYYYYYYYYY
整型主键上的聚簇索引YYYYYYYYYYYY
复合或非整型主键上的聚簇索引YYYYYYYYYYYY
多值索引YYYYYYNNNNNN
外键约束EEEEEENNNNNN
TiFlash 延迟物化YYYYYYNNNNNN
全局索引 (Global Index)YENNNNNNNNNN
向量索引ENNNNNNNNNNN

SQL 语句

SQL 语句 38.48.38.28.17.57.16.56.15.45.35.25.1
SELECTINSERTUPDATEDELETEREPLACEYYYYYYYYYYYY
INSERT ON DUPLICATE KEY UPDATEYYYYYYYYYYYY
LOAD DATA INFILEYYYYYYYYYYYY
SELECT INTO OUTFILEYYYYYYYYYYYY
INNER JOIN, LEFT|RIGHT [OUTER] JOINYYYYYYYYYYYY
UNIONUNION ALLYYYYYYYYYYYY
EXCEPTINTERSECT 运算符YYYYYYYYYYYY
GROUP BYORDER BYYYYYYYYYYYYY
GROUP BY 修饰符YYYYYNNNNNNN
窗口函数YYYYYYYYYYYY
公共表表达式 (CTE)YYYYYYYYYYYY
START TRANSACTIONCOMMITROLLBACKYYYYYYYYYYYY
EXPLAINYYYYYYYYYYYY
EXPLAIN ANALYZEYYYYYYYYYYYY
用户自定义变量EEEEEEEEEEEE
BATCH [ON COLUMN] LIMIT INTEGER DELETEYYYYYYYYNNNN
BATCH [ON COLUMN] LIMIT INTEGER INSERT/UPDATE/REPLACEYYYYYYYNNNNN
ALTER TABLE ... COMPACTYYYYYYYENNNN
表级锁 (Table Lock)EEEEEEEEEEEE
物化列式存储的查询结果YYYYYYENNNNN

高级 SQL 功能

高级 SQL 功能8.48.38.28.17.57.16.56.15.45.35.25.1
向量搜索ENNNNNNNNNNN
Prepare 语句执行计划缓存YYYYYYYYYYEE
非 Prepare 语句执行计划缓存YYYYYENNNNNN
实例级执行计划缓存ENNNNNNNNNNN
执行计划绑定 (SQL Binding)YYYYYYYYYYYY
跨数据库执行计划绑定 (Cross-DB Binding)YYYYNNNNNNNN
根据历史执行计划创建绑定YYYYYYENNNNN
下推计算结果缓存 (Coprocessor Cache)YYYYYYYYYYYY
Stale ReadYYYYYYYYYYYY
Follower ReadYYYYYYYYYYYY
通过系统变量 tidb_snapshot 读取历史数据YYYYYYYYYYYY
Optimizer hintsYYYYYYYYYYYY
MPP 执行引擎YYYYYYYYYYYY
MPP 执行引擎 - compression exchangeYYYYYYNNNNNN
TiFlash Pipeline 执行模型YYYYYNNNNNNN
TiFlash 副本选择策略YYYYYNNNNNNN
索引合并YYYYYYYYYEEE
基于 SQL 的数据放置规则YYYYYYYYEENN
Cascades PlannerEEEEEEEEEEEE
Runtime FilterYYYYYNNNNNNN

数据定义语言 (DDL)

数据定义语言 (DDL)8.48.38.28.17.57.16.56.15.45.35.25.1
CREATEDROPALTERRENAMETRUNCATEYYYYYYYYYYYY
生成列YYYYYYEEEEEE
视图YYYYYYYYYYYY
序列YYYYYYYYYYYY
AUTO_INCREMENTYYYYYYY4YYYYY
AUTO_RANDOMYYYYYYYYYYYY
TTL (Time to Live)YYYYYYENNNNN
DDL 算法断言YYYYYYYYYYYY
在单条语句中添加多列YYYYYYYEEEEE
更改列类型YYYYYYYYYYYY
临时表YYYYYYYYYYNN
并行 DDLYYYYYYYNNNNN
添加索引加速YYYYYYYNNNNN
元数据锁YYYYYYNNNNN
FLASHBACK CLUSTERYYYYYYYNNNNN
暂停/恢复 DDLYYYYYNNNNNNN
TiDB 加速建表EEEENNNNNNNN
设置 BDR Role 用于 TiCDC 双向同步时同步 DDLYYEENNNNNNNN

事务

事务8.48.38.28.17.57.16.56.15.45.35.25.1
Async commitYYYYYYYYYYYY
1PCYYYYYYYYYYYY
大事务 (1 TiB)YYYYYYYYYYYY
悲观事务YYYYYYYYYYYY
乐观事务YYYYYYYYYYYY
可重复读隔离(快照隔离)YYYYYYYYYYYY
读已提交隔离YYYYYYYYYYYY
自动终止长时间未提交的空闲事务YYYYNNNNNNNN
批量 DML 语句的执行方式 (tidb_dml_type = "bulk")EEENNNNNNNN

分区

分区8.48.38.28.17.57.16.56.15.45.35.25.1
Range 分区YYYYYYYYYYYY
Hash 分区YYYYYYYYYYYY
Key 分区YYYYYYNNNNNN
List 分区YYYYYYYYEEEE
List COLUMNS 分区YYYYYYYYEEEE
List 和 List COLUMNS 分区表的默认分区YYYYYNNNNNNN
EXCHANGE PARTITIONYYYYYYYEEEEE
REORGANIZE PARTITIONYYYYYYNNNNNN
COALESCE PARTITIONYYYYYYNNNNNN
动态裁剪YYYYYYYYEEEE
Range COLUMNS 分区YYYYYYYNNNNN
Range INTERVAL 分区YYYYYYENNNNN
分区表转换为非分区表YYYYYNNNNNNN
对现有表进行分区YYYYYNNNNNNN

统计信息

统计信息8.48.38.28.17.57.16.56.15.45.35.25.1
CM-Sketch默认关闭默认关闭默认关闭默认关闭默认关闭默认关闭默认关闭默认关闭默认关闭默认关闭YY
直方图YYYYYYYYYYYY
扩展统计信息EEEEEEEEEEEE
统计反馈NNNNNNN已废弃已废弃EEE
统计信息自动更新YYYYYYYYYYYY
动态裁剪YYYYYYYYEEEE
收集部分列的统计信息YYEEEEEEENNN
限制统计信息的内存使用量EEEEEEEENNNN
随机采样约 10000 行数据来快速构建统计信息已废弃已废弃已废弃已废弃已废弃EEEEEEE
锁定统计信息YYYYYEENNNNN
轻量级统计信息初始化YYYYYENNNNNN
显示统计信息收集的进度YYYYYNNNNNNN

安全

安全8.48.38.28.17.57.16.56.15.45.35.25.1
传输层加密 (TLS)YYYYYYYYYYYY
静态加密 (TDE)YYYYYYYYYYYY
基于角色的访问控制 (RBAC)YYYYYYYYYYYY
证书鉴权YYYYYYYYYYYY
caching_sha2_password 认证YYYYYYYYYYYN
tidb_sm3_password 认证YYYYYYYNNNNN
tidb_auth_token 认证YYYYYYYNNNNN
authentication_ldap_sasl 认证YYYYYYNNNNNN
authentication_ldap_simple 认证YYYYYYNNNNNN
密码管理YYYYYYYNNNNN
与 MySQL 兼容的 GRANT 权限管理YYYYYYYYYYYY
动态权限YYYYYYYYYYYY
安全增强模式YYYYYYYYYYYY
日志脱敏YYYYYYYYYYYY

数据导入和导出

数据导入和导出8.48.38.28.17.57.16.56.15.45.35.25.1
快速导入 (TiDB Lightning)YYYYYYYYYYYY
快速导入 (IMPORT INTO)YYYYYNNNNNNN
mydumper 逻辑导出已废弃已废弃已废弃已废弃已废弃已废弃已废弃已废弃已废弃已废弃已废弃已废弃
Dumpling 逻辑导出YYYYYYYYYYYY
事务 LOAD DATA 5YYYYYYYYYYYY
数据迁移工具YYYYYYYYYYYY
TiDB Binlog 6已移除已废弃YYYYYYYYYY
Change data capture (CDC)YYYYYYYYYYYY
TiCDC 支持保存数据到存储服务 (Amazon S3/GCS/Azure Blob Storage/NFS)YYYYYYENNNNN
TiCDC 支持在两个 TiDB 集群之间进行双向复制YYYYYYYNNNNN
TiCDC OpenAPI v2YYYYYYNNNNNN
DM 支持迁移 MySQL 8.0YYYYEEEENNNN

管理,可视化和工具

管理,可视化和工具8.48.38.28.17.57.16.56.15.45.35.25.1
TiDB Dashboard 图形化展示YYYYYYYYYYYY
TiDB Dashboard 持续性能分析功能YYYYYYYYEENN
TiDB Dashboard Top SQL 功能YYYYYYYYENNN
TiDB Dashboard SQL 诊断功能YYYYYYYEEEEE
TiDB Dashboard 集群诊断功能YYYYYYYEEEEE
Grafana 中的 TiKV-FastTune 面板EEEEEEEEEEEE
Information schemaYYYYYYYYYYYY
Metrics schemaYYYYYYYYYYYY
Statements summary tablesYYYYYYYYYYYY
Statements summary tables - 持久化 statements summaryEEEEEENNNNNN
慢查询日志YYYYYYYYYYYY
TiUP 部署YYYYYYYYYYYY
Kubernetes operatorYYYYYYYYYYYY
内置物理备份YYYYYYYYYYYY
Global KillYYYYYYYYEEEE
Lock ViewYYYYYYYYYYYE
SHOW CONFIGYYYYYYYYYYYY
SET CONFIGYYYYYYYYEEEE
DM WebUIEEEEEEEENNNN
前台限流YYYYYYYENNNN
后台限流EEEEEEENNNNN
基于 EBS 的备份和恢复YYYYYYYNNNNN
PITRYYYYYYYNNNNN
全局内存控制YYYYYYYNNNNN
RawKV 跨集群复制EEEEEEENNNNN
Green GCEEEEEEEEEEEE
资源管控 (Resource Control)YYYYYYNNNNNN
Runaway Queries 自动管理YYYYENNNNNNN
后台任务资源管控EEEEENNNNNNN
TiFlash 存算分离架构与 S3 支持YYYYYENNNNNN
选择执行分布式执行框架任务的 TiDB 节点YYYYYNNNNNNN
通过系统变量 tidb_enable_tso_follower_proxy 控制 PD Follower Proxy 功能YYYYYYYYYYNN
通过系统变量 pd_enable_follower_handle_region 控制 Active PD Follower 功能EEEENNNNNNNN
PD 微服务EEEENNNNNNNN
TiDB 分布式执行框架YYYYYENNNNNN
全局排序YYYYENNNNNNN
TiProxyYYYYNNNNNNNN

  1. TiDB 误将 latin1 处理为 utf8 的子集。见 TiDB #18955
  2. 从 v6.5.0 起,系统变量 tidb_allow_function_for_expression_index 所列出的函数已通过表达式索引的测试,可以在生产环境中创建并使用,未来版本会持续增加。对于没有列出的函数,则不建议在生产环境中使用相应的表达式索引。详情请参考表达式索引
  3. TiDB 支持的完整 SQL 列表,见语句参考
  4. TiDB v6.4.0 开始,支持高性能、全局单调递增的 AUTO_INCREMENT
  5. 从 v7.5.0 开始,TiDB Binlog 的数据同步功能被废弃。从 v8.3.0 开始,TiDB Binlog 被完全废弃。从 v8.4.0 开始,TiDB Binlog 被移除。如需进行增量数据同步,请使用 TiCDC。如需按时间点恢复 (point-in-time recovery, PITR),请使用 PITR。在将 TiDB 集群升级到 v8.4.0 或之后版本前,务必先切换至 TiCDC 和 PITR。
  6. TiDB v7.0.0 开始新增的参数 FIELDS DEFINED NULL BY 以及新增支持从 S3 和 GCS 导入数据,均为实验特性。从 TiDB v7.6.0 开始 LOAD DATA 的事务行为与 MySQL 的事务行为一致,包括事务内的 LOAD DATA 语句本身不再自动提交当前事务,也不会开启新事务,并且事务内的 LOAD DATA 语句可以被显式提交或者回滚。此外,LOAD DATA 语句会受 TiDB 事务模式设置(乐观/悲观)影响。

文档内容是否有帮助?