mysql分区和分表比较_MySQL分区和分表的区别与联系

一、分区和分表简介

分表

就是将一张大表分成N个小表。

分区

将一张大表的数据分成N个区块,这些区块可以在同一个磁盘上,也可以在不同的磁盘上。

二、分区和分表的区别

1. 实现方式

1.1 分表

MySQL的分表是真正的分表,将一张大表分成若干个小表之后,每个小表都是完整的一张表,都对应三个文件(以MyISAM存储引擎为例):

.MYD文件:数据文件;

.MYI文件:索引文件;

.FRM文件:表结构文件。

如下图所示:

3728d330603103604c5c67c5a1e3e24f.png

上述的分表使用MERGE存储引擎(MyISAM存储引擎的分表变种)。alluser是总表,它下面有三个分表,user1、user2和user3。这三个子表都是独立的表,读取数据的时候,我们可以通过总表来取数据。

由上图可知,三个子表的.MYD(数据)和.MYI(索引)文件并没有存储在数据库指定的数据目录(Data Directory)中,而是存储在各自指定的目录中,然后在数据目录中创建相应的软链接指向它们。实际上,MySQL支持将分表的相关文件分散存储在不同的磁盘和分区中,对于拥有多个磁盘的数据库服务器来说,无疑能够充分利用多个磁盘的I/O性能。

由上图还可知,总表是没有.MYD和.MYI文件

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值