这一章讨论用户自定义分区.
表分区不同于窗口函数使用的分区。有关窗口函数的信息,请参见窗口函数.
在MySQL 8.0中,分区支持由InnoDB
而且NDB
存储引擎。
MySQL 8.0目前不支持使用任何存储引擎对表进行分区InnoDB
或NDB
,如MyISAM
.使用不提供本机分区支持的存储引擎创建分区表的尝试将失败ER_CHECK_NOT_IMPLEMENTED.
Oracle提供的MySQL 8.0社区二进制文件包括分区支持InnoDB
而且NDB
存储引擎。有关MySQL企业版二进制文件中提供的分区支持的信息,请参见MySQL企业版.
如果您从源代码编译MySQL 8.0,那么使用InnoDB
支持足以生成具有分区支持的二进制文件InnoDB
表。有关更多信息,请参见从源文件安装MySQL.
不需要做任何进一步的操作来启用分区支持InnoDB
(例如,不需要在my.cnf
文件)。
控件禁用分区支持是不可能的InnoDB
存储引擎。
看到第二章,MySQL分区概述,以介绍分区和分区概念。
支持几种类型的分区以及子分区;看到第三章,分区类型,3.6节,“Subpartitioning”.
第四章,分区管理,涵盖了在现有分区表中添加、删除和修改分区的方法。
第4.4节,“分区的维护”,讨论了用于分区表的表维护命令。
的分区
表中INFORMATION_SCHEMA
数据库提供关于分区和分区表的信息。看到INFORMATION_SCHEMA PARTITIONS表,以获取更多资讯;有关此表的查询示例,请参见第3.7节,“MySQL分区如何处理NULL”.
关于MySQL 8.0中分区的已知问题,请参见第六章,分区限制和限制.
在使用分区表时,您可能还会发现以下资源非常有用。
额外的资源。关于MySQL中用户定义分区的其他信息来源包括:
这是为那些对MySQL分区技术感兴趣或尝试的人准备的官方论坛。它具有来自MySQL开发人员和其他人的公告和更新。它由分区开发和文档团队的成员监控。10bet官方网站
MySQL分区架构师兼首席开发者Mikael Ronström经常在这里发布有关他在MySQL分区和NDB集群方面的工作的文章。
一个MySQL新闻网站,以MySQL相关的博客为特色,使用我的MySQL的人应该会感兴趣。我们鼓励您在这里查看使用MySQL分区的人保存的博客链接,或者将您自己的博客添加到这些博客中。