1
6
3
1
专栏/.../

整理 TiDB 的一些使用限制

 数据源的TiDB学习之路  发表于  2024-10-09

每个数据库都有一些使用限制,比如标识符的长度限制、单库/单表数据量限制、行宽限制、索引个数限制等。

本文就 TiDB 数据库中的一些使用限制做一个完整的说明,整体上分为有限制和无限制进行说明。

无限制

维度

Database 个数

Table 个数

View 个数

Connections 个数

单个 Database 中 Table 个数

单个 Table 的 Row 行数

单个 Table 的 Size 大小

有限制

维度

默认值上限

最大调整上限

调整参数

标识符长度(database/table/column/index/view/sequence)

64

/

/

单表Column个数

1017

4096

table-column-count-limit

TiDB 配置文件描述

单表Index个数

64

512

index-limit

TiDB 配置文件描述

单表Partition个数

8192

单行Size大小

6 MB

120 MB

txn-entry-size-limit

TiDB 配置文件描述

单行Key大小

3072 Byte

12288 Byte

max-index-length

TiDB 配置文件描述

单索引Column个数

16

/

/

单Sql长度限制(受服务端和客户端一次传送数据包大小限制)

64 MB

1 GB

max_allowed_packet

系统变量

单事务最大语句条数(仅限可重试的乐观事务模式下)

5000

开启悲观事务或关闭事务重试后无限制

stmt-count-limit

TiDB 配置文件描述

部分超限错误提示

  • 单表Column个数超限
ERROR 1117 (HY000): Too many columns
  • 单表Index个数超限
ERROR 1069 (42000): Too many keys specified; max 64 keys allowed
  • 单表Partition个数
ERROR 1499 (HY000): Too many partitions (including subpartitions) were defined
  • 单行Size大小
ERROR 1406 (22001): Data too long for column 'b' at row 1
  • 单行Key大小
ERROR 1071 (42000): Specified key was too long (4000 bytes); max key length is 3072 bytes
  • 单索引Column个数
ERROR 1070 (42000): Too many key parts specified; max 16 parts allowed

参考文档

TiDB 使用限制

1
6
3
1

版权声明:本文为 TiDB 社区用户原创文章,遵循 CC BY-NC-SA 4.0 版权协议,转载请附上原文出处链接和本声明。

评论
暂无评论