MySQL数据库之关于mysql分区优缺点、分区表存储引擎设置的介绍
小标 2019-03-06 来源 : 阅读 2354 评论 0

摘要:本文主要向大家介绍了MySQL数据库之关于mysql分区优缺点、分区表存储引擎设置的介绍 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助。

本文主要向大家介绍了MySQL数据库之关于mysql分区优缺点、分区表存储引擎设置的介绍 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助。

MySQL数据库之关于mysql分区优缺点、分区表存储引擎设置的介绍

mysql分区


分区是根据一定的规则,数据库把一个表分解成多个更小的,更容易管理的部分。就访问数据库的应用而言,逻辑上只有一个表或是一个索引,但是实际上这个表可能有数10个物理分区对象组成。每个分区都是一个独立的对象,可以独自处理,可以作为表的一部分进行处理。分区对应用来说完全是透明的,不影响应用的业务逻辑。


mysql分区的有优点主要包括4个部分:


和单个磁盘或者文件系统相比,可以存储更多的数据。 优化查询。在where字句中包含分区条件时,可以只扫描必要的一个或是多个分区来提高查询效率;同时在涉及SUM()或是COUNT()这类聚合函数的查询时,可以容易的在每个分区上进行并行处理,最终只需要汇总所有分区得到的结果。 对于已经过期,或者不需要保存的数据,可以通过删除与这些数据有关的的分区来快速删除数据。 跨多个磁盘来分散数据查询,以获得更大的查询吞吐量。


分区键


分区有利于管理非常大的表,它采用了‘分而治之’的逻辑,分区引入了分区键(partition key)的概念,分区键用于根据某个区间值(或者范围值)、特定值列表或者hash函数值执行数据的聚集,让数据根据分布规则分布在不同的分区中,让一个大对象变成一些小对象。


查询当前的mysql是否支持分区:


查询当前版本是否安装了分区插件:


Mysql支持使用大部分存储引擎(比如 myisam,innodb,memory等存储引擎)创建分区表;Mysql不支持使用MERGE或是CSV存储引擎来创建分区表;同一个分区表的所有分区必须使用同一个存储引擎,不同的分区表可以使用不同的存储引擎。


分区表存储引擎设置:


和非分区表设置存储引擎一样,分区表设置存储引擎,只能用【STORAGE】ENGINE子句。但是【STORAGE】ENGINE子句必须列在 CREATE TABLE语句中的其他任何分区选项之前。


例如:下面的例子创建了一个使用INNODB引擎并有6个HASH分区的表:


注意:MySQL的分区适用于一个表的所有数据和索引,不能只对表数据分区而不对索引分区;反过来也是一样的,不能只对索引分区而不对表分区,同时也不能只对表的一部分数据进行分区,MySQL的分区表上创建的索引一定是本地LOCAL索引。


          

本文由职坐标整理并发布,希望对同学们学习MySQL有所帮助,更多内容请关注职坐标数据库MySQL数据库频道!


本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程