您的当前位置:首页正文

mysql分区表的介绍

2024-07-16 来源:年旅网

说明

1、对于用户来说,分区表是一个独立的逻辑表,但底层由多个物理子表组成。

实现分区的代码实际上是通过封装一组底层表的对象,但对于SQL层来说,它是一个完全封装底层的黑盒。MySQL实现分区的方式也意味着索引也是按照分区的子表来定义的,没有全局索引。

2、用户的SQL语句需要对分区表进行优化,在SQL条件中要带上分区条件的列,这样才能将查询定位到少量的分区上。

否则就会扫描所有的分区,可以通过EXPLAINPARTITIONS来查看某个SQL语句会落在哪些分区上,从而进行SQL优化。

实例

mysql> explain partitions select count(1) from user_partition where id in (1,2,3,4,5);
+----+-------------+----------------+------------+-------+---------------+---------+---------+------+------+--------------------------+
| id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+----------------+------------+-------+---------------+---------+---------+------+------+--------------------------+
| 1 | SIMPLE | user_partition | p1,p4 | range | PRIMARY | PRIMARY | 8 | NULL | 5 | Using where; Using index |
+----+-------------+----------------+------------+-------+---------------+---------+---------+------+------+--------------------------+
1 row in set (0.00 sec)

以上就是mysql分区表的介绍,希望对大家有所帮助。更多mysql学习指路:

推荐操作系统:windows7系统、mysql5.8、DELL G3电脑

显示全文