欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

mysql分区管理

程序员文章站 2022-05-21 12:31:25
...

hash分区的目的是将数据按照某列进行hash计算后更加均匀的分散到各个分区,相比,range和list分区来说,hash分区不需要明确指定一个给定的列值或者列值集合

应该在保存在哪个分区,mysql会自动按照hash计算后完成这些工作,我们只需要基于将要进行hash的列值指定一个列或者表达式,以及可选的指定要分区的表总的分区数量。

下面我们举一个例子来说,hash分区如何创建。首先我们创建如下的表格:hash_partition_tbl,并插入几条记录到表中,如下所示:

mysql分区管理

我们也同时看一下,对应的表空间文件是如何分布的(注意,我们已经设置了innodb_file_per_table=1,即每个表单独一个ibd文件),我们在对应的datadir目录下可以看到:

mysql分区管理

由于我们是分成4个hash区,因此可以看到四个表空间文件,分别是hash_partition_tab