目录
本章讨论用户定义的分区。
注意
表分区不同于窗口函数使用的分区。有关窗口函数的信息,请参见 第12.21节“窗口函数”。
在MySQL 8.0中,分区支持由 InnoDB和 NDB存储引擎提供。
MySQL 8.0当前不支持使用除InnoDB 或以外的任何存储引擎对表进行分区NDB,例如 MyISAM。尝试使用不提供本机分区支持的存储引擎创建分区表失败,并显示 ER_CHECK_NOT_IMPLEMENTED。
Oracle提供的MySQL 8.0社区二进制文件包括InnoDB和 NDB存储引擎提供的分区支持。有关MySQL企业版二进制文件中提供的分区支持的信息,请参见 第29章,MySQL企业版。
如果要从源代码编译MySQL 8.0,则配置带有InnoDB支持的构建足以产生具有分区分区InnoDB表的二进制文件 。有关更多信息,请参见 第2.9节“从源代码安装MySQL”。
无需进一步做任何事情即可启用分区支持 InnoDB(例如,文件中不需要特殊条目my.cnf)。
无法禁用InnoDB存储引擎的分区支持 。
有关分区和分区概念的介绍,请参见第23.1节“ MySQL中的分区概述”。
支持多种类型的分区以及子分区。请参见第23.2节“分区类型”和 第23.2.6节“子分区”。
第23.3节“分区管理”介绍了在现有分区表中添加,删除和更改分区的方法。
第23.3.4节“维护分区”讨论了与分区表一起使用的表维护命令。
数据库中 的PARTITIONS表 INFORMATION_SCHEMA提供有关分区和分区表的信息。有关更多信息,请参见 第25.21节“ INFORMATION_SCHEMA分区表”。有关针对该表进行查询的一些示例,请参见 第23.2.7节“ MySQL分区如何处理NULL”。
有关MySQL 8.0中分区的已知问题,请参见 第23.6节“分区的限制和限制”。
当使用分区表时,您可能还会发现以下资源很有用。
其他资源。 有关MySQL中用户定义的分区的其他信息来源包括:
-
这是对MySQL分区技术感兴趣或正在尝试的人的正式讨论论坛。它具有MySQL开发人员和其他人员的公告和更新。它由分区开发和文档编制团队的成员进行监视。
-
MySQL分区架构师和首席开发人员MikaelRonström经常在此处发布有关他在MySQL分区和NDB集群上的工作的文章。
-
一个以MySQL相关博客为特色的MySQL新闻网站,使用我的MySQL的任何人都应该对此感兴趣。我们鼓励您在此处检查指向由MySQL分区工作的人保留的博客的链接,或者将您自己的博客添加到其中。




