mysql数据库表分区教程

MySQL 数据库表分区教程 MySQL 数据库表分区是指将一个大表根据某些条件分割成多个小表,以提高数据库的可伸缩性、可管理性和效率。 MySQL 5.1 开始支持数据表分区。 什么是表分区 表分区是指将一个大表根据某些条件分割成多个小表。例如,对于某用户表的记录超过了 600 万条,可以根据入库日期将表分区,也可以根据所在地将表分区。 为什么要对表进行分区 对表进行分区可以提高大型表的可伸缩性、可管理性和效率。分区的一些优点包括: 1. 可以存储更多的数据。 2. 可以删除已经失去保存意义的数据。 3. 一些查询可以得到极大的优化。 4.涉及到例如 SUM() 和 COUNT() 这样的聚合函数的查询,可以很容易地进行并行处理。 5. 可以通过跨多个磁盘来分散数据查询,来获得更大的查询吞吐量。 分区类型 MySQL 中有四种类型的分区: RANGE 分区、LIST 分区、HASH 分区和 KEY 分区。 1. RANGE 分区 RANGE 分区是基于属于一个给定连续区间的列值,把多行分配给分区。例如,以下实例中, employees 表根据 store_id 列的值进行分区。 ```sql CREATE TABLE employees ( id INT NOT NULL, fname VARCHAR(30), lname VARCHAR(30), hired DATE NOT NULL DEFAULT '1970-01-01', separated DATE NOT NULL DEFAULT '9999-12-31', job_code INT NOT NULL, store_id INT NOT NULL ) PARTITION BY RANGE (store_id) ( PARTITION p0 VALUES LESS THAN (6), PARTITION p1 VALUES LESS THAN (11), PARTITION p2 VALUES LESS THAN (16), PARTITION p3 VALUES LESS THAN (21) ); ``` 2. LIST 分区 LIST 分区类似于 RANGE 分区,区别在于 LIST 分区是基于列值匹配一个离散值集合中的某个值来进行选择。 3. HASH 分区 HASH 分区基于用户定义的表达式的返回值来进行选择的分区,该表达式使用将要插入到表中的这些行的列值进行计算。 4. KEY 分区 KEY 分区类似于按 HASH 分区,区别在于 KEY 分区只支持计算一列或多列,且 MySQL 服务器提供其自身的哈希函数。必须有一列或多列包含整数值。 分区的优点 分区可以提高大型表的可伸缩性、可管理性和效率。分区可以使得一些查询可以得到极大的优化,使得数据的管理和维护更加方便。






















剩余11页未读,继续阅读

- Madiao_LanChen2012-11-14不是很详细,不过还是可以学习到不少有用的知识,还是看下mysql权威指南比较好
- 北国锋锋2012-10-26够详细,但是不全,没有垂直分区说明。但还是谢谢分享~
- ITMuch.com2015-01-19挺详细的,挺好的。谢谢啦。

- 粉丝: 0
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 酒店ITM网络技术大比武题库.doc
- 《软件工程与项目管理》第10章软件项目管理.ppt
- (源码)基于PythonDjango框架的疫情信息综合管理系统.zip
- 价值工程在压力容器制造行业项目管理中的应用.docx
- 《网络安全协议IPSec》教学设计.docx
- 当前计算机辅助教学的实践与思考.docx
- 专升本互联网软件应用与开发模拟试题试卷复习资料.doc
- Asp的求职招聘网站设计方案与开发.doc
- 大数据背景下的税收治理问题.docx
- 安徽专升本安大高升计算机基础提高班测试卷(附标准标准答案).doc
- ASP.NET开发大全第23章.登录模块方案设计书.doc
- 探索党员档案信息化的管理新途径.docx
- 新经济时代云计算下会计信息化的应用.docx
- 对网络安全等级保护设计方案的探讨.docx
- (源码)基于Django框架的智能电表数据采集系统.zip
- 软件工程项目思想——C--面向对象程序设计.doc


