相关文件10bet官方网站 下载本手册 从本手册中摘录

MySQL 8.0参考手册/....../ 划分限制与存储引擎有关的限制

24.6.2与存储引擎有关的分区限制

在MySQL 8.0中,MySQL Server实际提供分区支持,而是由表存储引擎自己或本机分区处理程序提供。在MySQL 8.0中,只有Innodb.存储引擎提供本机分区处理程序。这意味着无法使用任何其他存储引擎创建分区表。

笔记

mysql群集NDB.存储引擎还提供本机划分支持,但目前尚未在MySQL 8.0中支持。

alter table ...优化分区使用使用的分区表无法正常工作Innodb.。用更改表...重建分区ALTER TABLE ...分析分区而不是此类表格。有关更多信息,请参阅第13.1.9.1节“Alter Table Partition操作”

用户定义的分区和NDB存储引擎(NDB集群)。划分钥匙(包括线键)是支持的唯一分区类型NDB.存储引擎。在NDB群集中的正常情况下不可能使用除[的任何分区类型)创建NDB群集表。线性]钥匙,并试图这样做失败。

例外(不适合生产):可以通过设置来覆盖这种限制新的NDB群集SQL节点上的系统变量。如果您选择执行此操作,则应意识到表使用除此之外的分区类型[线性]键生产不受支持。在这种情况下,您可以创建和使用具有除此之外的分区类型的表钥匙或者线键,但你完全这样做了你自己的风险

可以为其定义的最大分区数NDB.表取决于群集中的数据节点和节点组的数量,使用中的NDB群集软件的版本以及其他因素。看NDB和用户定义的分区, 想要查询更多的信息。

每个分区中可以存储的最大固定大小数据量NDB.表是128 TB。以前,这是16 GB。

创建表改变表导致用户划分的语句NDB.表不符合以下两个要求中的任何一种或两种要求,并且失败错误:

  1. 表必须具有显式主键。

  2. 表的分区表达式中列出的所有列必须是主键的一部分。

例外。如果是用户划分的NDB.表是使用空列列表创建的(即,使用按键分区()或者按线性键分区()),然后不需要显式主键。

升级分区表。执行升级时,由划分的表钥匙必须倾倒并重新加载。使用除此之外的存储引擎进行分区表Innodb.无法从MySQL 5.7或更早版本升级到MySQL 8.0或更高版本;您必须从这些表中删除划分更改表...删除分区或将它们转换为Innodb.使用ALTER TABLE ...... ENGINE = INNODB在升级之前。

有关转换的信息myisam.表到Innodb., 看第15.6.1.5节“将来自Myisam的表转换为InnoDB”