分享

获取MySQL分区表信息的几种方法

 拼命奋斗的自己 2020-05-28

关于MySQL 分区表相关的文章,可以参考:

理解MySQL表分区(partition),创建表分区,对比分析查询性能

下面介绍获取MySQL分区表信息的几种方法。

b004471d9d2.jpeg

1. show create table 表名

可以查看创建分区表的create语句。

b020c437d35.jpeg

/*!...*/ 是一种特殊的注释,其他的数据库产品当然不会执行。mysql特殊处理,会选择性的执行。可以认为是:预编译中的条件编译。特别注意 50100,它表示5.01.00 版本或者更高的版本,才执行。

2. show table status

可以查看表是不是分区表。

5ac238482cd.jpeg

3. 查看information_schema.partitions表

SELECT PARTITION_NAME,PARTITION_METHOD,PARTITION_EXPRESSION,PARTITION_DESCRIPTION,

TABLE_ROWS,SUBPARTITION_NAME,SUBPARTITION_METHOD,SUBPARTITION_EXPRESSION

FROM information_schema.PARTITIONS

WHERE TABLE_SCHEMA=SCHEMA() AND TABLE_NAME='TABLE_NAME';

可以查看表具有哪几个分区、分区的方法、分区中数据的记录数等信息,甚至还包括子分区的信息。

3bca9d5b237.jpeg

4. explain select 或 explain partitions select语句

通过此语句来显示扫描哪些分区,及它们是如何使用的。

explain partitions select * from tb_sub2 where purchased='1989-01-01';

explain select * from tb_sub2 where purchased='1989-01-01';

上述2条语句的输出结果是一样的。

e846ca5644e.jpeg

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多