TiDB 功能概览

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

数据类型,函数和操作符

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

索引和约束

索引和约束6.66.56.15.45.35.25.15.04.0
表达式索引 2YYEEEEEEE
列式存储 (TiFlash)YYYYYYYYY
使用 FastScan 加速 OLAP 场景下的查询EENNNNNNN
RocksDB 引擎YYYYYYYYY
Titan 插件YYYYYYYYY
Titan Level MergeEEEEEEEEE
使用 bucket 提高数据扫描并发度EEENNNNNN
不可见索引YYYYYYYYN
复合主键YYYYYYYYY
唯一约束YYYYYYYYY
整型主键上的聚簇索引YYYYYYYYY
复合或非整型主键上的聚簇索引YYYYYYYYN
多值索引ENNNNNNN
外键约束YNNNNNNN

SQL 语句

SQL 语句 36.66.56.15.45.35.25.15.04.0
SELECTINSERTUPDATEDELETEREPLACEYYYYYYYYY
INSERT ON DUPLICATE KEY UPDATEYYYYYYYYY
LOAD DATA INFILEYYYYYYYYY
SELECT INTO OUTFILEYYYYYYYYY
INNER JOIN, LEFT|RIGHT [OUTER] JOINYYYYYYYYY
UNIONUNION ALLYYYYYYYYY
EXCEPTINTERSECT 运算符YYYYYYYYN
GROUP BYORDER BYYYYYYYYYY
窗口函数YYYYYYYYY
公共表表达式 (CTE)YYYYYYYNN
START TRANSACTIONCOMMITROLLBACKYYYYYYYYY
EXPLAINYYYYYYYYY
EXPLAIN ANALYZEYYYYYYYYY
用户自定义变量EEEEEEEEE
BATCH [ON COLUMN] LIMIT INTEGER DELETEYYYNNNNNN
BATCH [ON COLUMN] LIMIT INTEGER INSERT/UPDATE/REPLACEYYNNNNNNN
ALTER TABLE ... COMPACTYYENNNNNN
表级锁 (Table Lock)EEEEEEEEE
物化列式存储的查询结果EENNNNNNN

高级 SQL 功能

高级 SQL 功能6.66.56.15.45.35.25.15.04.0
执行计划缓存YYYYYEEEE
执行计划管理 (SPM)YYYYYYYYY
根据历史执行计划创建绑定EENNNNNNN
下推计算结果缓存 (Coprocessor Cache)YYYYYYYYE
Stale ReadYYYYYYYNN
Follower ReadYYYYYYYYY
通过系统变量 tidb_snapshot 读取历史数据YYYYYYYYY
Optimizer hintsYYYYYYYYY
MPP 执行引擎YYYYYYYYN
MPP 执行引擎 - compression exchangeYNNNNNNNN
索引合并YYYYEEEEE
基于 SQL 的数据放置规则YYYEENNNN
Cascades PlannerEEEEEEEEE

数据定义语言 (DDL)

数据定义语言 (DDL)6.66.56.15.45.35.25.15.04.0
CREATEDROPALTERRENAMETRUNCATEYYYYYYYYY
生成列EEEEEEEEE
视图YYYYYYYYY
序列YYYYYYYYY
AUTO_INCREMENTYYYYYYYYY
AUTO_RANDOMYYYYYYYYY
TTL (Time to Live)EENNNNNNN
DDL 算法断言YYYYYYYYY
在单条语句中添加多列YYEEEEEEE
更改列类型YYYYYYYNN
临时表YYYYYNNNN
并行 DDLYYNNNNNNN
添加索引加速YYNNNNNNN
元数据锁YYNNNNNNN
FLASHBACK CLUSTER TO TIMESTAMPYYNNNNNNN

事务

事务6.66.56.15.45.35.25.15.04.0
Async commitYYYYYYYYN
1PCYYYYYYYYN
大事务 (10 GB)YYYYYYYYY
悲观事务YYYYYYYYY
乐观事务YYYYYYYYY
可重复读隔离(快照隔离)YYYYYYYYY
读已提交隔离YYYYYYYYY

分区

分区6.66.56.15.45.35.25.15.04.0
Range 分区YYYYYYYYY
Hash 分区YYYYYYYYY
List 分区YYYEEEEEN
List COLUMNS 分区YYYEEEEEN
EXCHANGE PARTITIONYYEEEEEEN
动态裁剪YYYEEEENN
Range COLUMNS 分区YYNNNNNNN
Range INTERVAL 分区EENNNNNNN

统计信息

统计信息6.66.56.15.45.35.25.15.04.0
CM-Sketch默认关闭默认关闭默认关闭默认关闭默认关闭YYYY
直方图YYYYYYYYY
扩展统计信息(多列)EEEEEEEEN
统计反馈NN已废弃已废弃EEEEE
统计信息自动更新YYYYYYYYY
快速分析EEEEEEEEE
动态裁剪YYYEEEENN
收集部分列的统计信息EEEENNNNN
限制统计信息的内存使用量EEENNNNNN
随机采样约 10000 行数据来快速构建统计信息EEEEEEEEE
锁定统计信息EENNNNNNN

安全

安全6.66.56.15.45.35.25.15.04.0
传输层加密 (TLS)YYYYYYYYY
静态加密 (TDE)YYYYYYYYY
基于角色的访问控制 (RBAC)YYYYYYYYY
证书鉴权YYYYYYYYY
caching_sha2_password 认证YYYYYYNNN
tidb_sm3_password 认证YYNNNNNNN
tidb_auth_token 认证YYNNNNNNN
密码管理YYNNNNNNN
与 MySQL 兼容的 GRANT 权限管理YYYYYYYYY
动态权限YYYYYYYNN
安全增强模式YYYYYYYNN
日志脱敏YYYYYYYYN

数据导入和导出

数据导入和导出6.66.56.15.45.35.25.15.04.0
快速导入 (TiDB Lightning)YYYYYYYYY
mydumper 逻辑导出已废弃已废弃已废弃已废弃已废弃已废弃已废弃已废弃已废弃
Dumpling 逻辑导出YYYYYYYYY
事务 LOAD DATAYYYYYYYYN 5
数据迁移工具YYYYYYYYY
TiDB BinlogYYYYYYYYY
Change data capture (CDC)YYYYYYYYY
TiCDC 支持保存数据到存储服务 (S3/NFS/Azure Blob Storage)EENNNNNNN
TiCDC 支持在两个 TiDB 集群之间进行双向复制YYNNNNNNN

管理,可视化和工具

管理,可视化和工具6.66.56.15.45.35.25.15.04.0
TiDB Dashboard 图形化展示YYYYYYYYY
TiDB Dashboard 持续性能分析功能YYYEENNNN
TiDB Dashboard Top SQL 功能YYYENNNNN
TiDB Dashboard SQL 诊断功能YYEEEEEEE
TiDB Dashboard 集群诊断功能YYEEEEEEE
Grafana 中的 TiKV-FastTune 面板EEEEEEEEE
Information schemaYYYYYYYYY
Metrics schemaYYYYYYYYY
Statements summary tablesYYYYYYYYY
Statements summary tables - 持久化 statements summaryENNNNNNNN
慢查询日志YYYYYYYYY
TiUP 部署YYYYYYYYY
Kubernetes operatorYYYYYYYYY
内置物理备份YYYYYYYYY
Global KillYYYEEEEEE
Lock ViewYYYYYYEEE
SHOW CONFIGYYYYYYYYY
SET CONFIGYYYEEEEEE
DM WebUIEEENNNNNN
前台限流YYENNNNNN
后台限流EENNNNNNN
基于 EBS 的备份和恢复YYNNNNNNN
PITRYYNNNNNNN
全局内存控制YYNNNNNNN
RawKV 跨集群复制EENNNNNNN
Green GCEEEEEEEEN
资源管控 (Resource Control)ENNNNNNNN

  1. TiDB 误将 latin1 处理为 utf8 的子集。见 TiDB #18955
  2. 从 v6.5.0 起,系统变量 tidb_allow_function_for_expression_index 所列出的函数已通过表达式索引的测试,可以在生产环境中创建并使用,未来版本会持续增加。对于没有列出的函数,则不建议在生产环境中使用相应的表达式索引。详情请参考表达式索引
  3. TiDB 支持的完整 SQL 列表,见语句参考
  4. 对于 TiDB v4.0,事务 LOAD DATA 不保证原子性。