- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Mysql分区表局限性总结
Mysql分区表局限性总结
昨天晚上asers.z问我怎么样使得数据在搜索的时候和58.com差不多,而且展示数据的速度要快。我一直想着用mysql的分区表解决,而乔楚(乔大姐)则认为是采用sphinx来解决。
但后来我找了一个资料才发现,原来分区表还是有局限性的,比如他就不支持全文索引。我是看这里看到的。。
--START--
Mysql5.1已经发行很久了,本文根据官方文档的翻译和自己的一些测试,对Mysql分区表的局限性做了一些总结,因为个人能力以及测试环境的 原因,有可能有错误的地方,还请大家看到能及时指出,当然有兴趣的朋友可以去官 方网站查阅。
本文测试的版本
XML/HTML代码
mysql select version();
++
| version() |
++
| 5.1.33-log |
++
1 row in set (0.00 sec)
一、关于Partitioning Keys, Primary Keys, and Unique Keys的限制
在5.1中分区表对唯一约束有明确的规定,每一个唯一约束必须包含在分区表的分区键(也包括主键约束)。
这句话也许不好理解,我们做几个实验:
SQL代码
CREATE TABLE t1
( id INT NOT NULL,
uid INT NOT NULL,
PRIMARY KEY (id)
)
PARTITION BY RANGE (id)
(PARTITION p0 VALUES LESS THAN(5) ENGINE = INNODB,
PARTITION p1 VALUES LESS THAN(10) ENGINE = INNODB
);
CREATE TABLE t1
( id INT NOT NULL,
uid INT NOT NULL,
PRIMARY KEY (id)
)
PARTITION BY RANGE (id)
(PARTITION p0 VALUES LESS THAN(5) ENGINE = MyISAM DATA DIRECTORY=/tmp INDEX DIRECTORY=/tmp,
PARTITION p1 VALUES LESS THAN(10) ENGINE = MyISAM DATA DIRECTORY=/tmp INDEX DIRECTORY=/tmp
);
mysql CREATE TABLE t1
- ( id INT NOT NULL,
- uid INT NOT NULL,
- PRIMARY KEY (id),
- UNIQUE KEY (uid)
- )
- PARTITION BY RANGE (id)
- (PARTITION p0 VALUES LESS THAN(5),
- PARTITION p1 VALUES LESS THAN(10)
- );
ERROR 1503 (HY000): A UNIQUE INDEX must include all columns in the tables partitioning function
二、关于存储引擎的限制
2.1 MERGE引擎不支持分区,分区表也不支持merge。
2.2 FEDERATED引擎不支持分区。这限制可能会在以后的版本去掉。
2.3 CSV引擎不支持分区
2.4 BLACKHOLE引擎不支持分区
2.5 在NDBCLUSTER引擎上使用分区表,分区类型只能是KEY(or LINEAR KEY) 分区。
2.6 当升级MYSQL的时候,如果你有使用了KEY分区的表(不管是什么引擎,NDBCLUSTER除外),那么你需要把这个表dumped在 reloaded。
2.7 分区表的所有分区或者子分区的存储引擎必须相同,这个限制也许会在以后的版本取消。
不指定任何引擎(使用默认引擎)。
所有分区或者子分区指定相同引擎。
三、关于函数的限制
在mysql5.1中建立分区表的语句中,只能包含下列函数:
ABS()
CEILING() and FLOOR() (在使用这2个函数的建立分区表的前提是使用函数的
您可能关注的文档
最近下载
- 自动控制原理(第七版)课后习题答案解析.pdf
- 事件与概率(古典概率、条件概率、全概率公式、贝叶斯公式)小题综合解析- 十年(2015-2024)高考真题数学分项汇编(全国).pdf VIP
- (2025)小学生诗词大会竞赛试题及标准答案.docx VIP
- 临建工程施工组织设计.docx VIP
- 儿童吉兰-巴雷综合征谱系疾病与抗糖脂抗体相关性研究进展 .pdf VIP
- 2025年钛铁项目建设总纲及方案.docx
- AB-罗克韦尔PowerFlex755变频器操作说明.pdf
- 幼儿园小班科学活动《颜色变变变》含课件.pptx VIP
- 2025诗词大会精选100题题库(含答案).docx VIP
- 小学诗词大会精选100题题库(含答案).docx VIP
文档评论(0)