mysql 如何进行分区_mysql 分区有哪些方法
MySQL 可应用于多种语言,包括 PERL, C, C++, JAVA 和 PHP。
在这些语言中,MySQL 在 PHP 的 web 开发中是应用最广泛。大家知
道 mysql 如何分区的吗?下面由店铺为大家整理的mysql 分区的方法,
希望大家喜欢!
mysql 分区的方法
一、概述
当 MySQL 的总记录数超过了 100 万后,会出现性能的大幅度下
降吗?答案是肯定的,但是,性能下降 >的比率不一而同,要看系统的
架构、应用程序、还有>包括索引、服务器硬件等多种因素而定。当有
网友问我这个问题的时候,我最常见的回答 >就是:分表,可以根据
id 区间或者时间先后顺序等多种规则来分表。分表很容易,然而由此
所带来的应用程序甚至是架构方面的改动工作却不>容小觑,还包括将
来的扩展性等。
在以前,一种解决方案就是使用 MERGE
类型,这是一个非常方便的做饭。架构和程序基本上不用做改动,
不过,它的缺点是显见的:
1.只能在相同结构的 MyISAM 表上使用
2.无法享受到 MyISAM 的全部功能,例如无法在 MERGE 类型上
执行 FULLTEXT 搜索
3.它需要使用更多的文件描述符
4.读取索引更慢
这个时候,MySQL 5.1 中新增的分区(Partition)功能的优势也就
很明显了:
1.与单个磁盘或文件系统分区相比,可以存储更多的数据
2.很容易就能删除不用或者过时的数据
3.一些查询可以得到极大的优化
4.涉及到 SUM()/COUNT() 等聚合函数时,可以并行进行
5.IO 吞吐量更大