Atitit 分区后的查询 mysql分区记录的流程与原理
Atitit 分区后的查询 mysql分区记录的流程与原理
1.2. 已经又数据了,如何分区? 给已有的表加上分区 ]1
1.4. VALUES value for partition 'p1' must have type INT2
1.5. A PRIMARY KEY must include all columns in the table's partitioning function3
1.1.1. ibd是MySQL数据文件、索引文件
1.1. 已经又数据了,如何分区? 给已有的表加上分区 ]
show VARIABLES like '%part%'
select * from account
alter table account
partition by list COLUMNS(plat)
(
partition p1 values in ('io'),
partition p2 values in ('an')
);
1.2. 分成4个区,数据文件和索引文件单独存放。
1. PARTITION BY LIST (cid) (
2. PARTITION p0 VALUES IN (0,4,8,12)
3. DATA DIRECTORY = '/data0/data'
4. INDEX DIRECTORY = '/data1/idx',
5.
6. PARTITION p1 VALUES IN (1,5,9,13)
7. DATA DIRECTORY = '/data2/data'
8. INDEX DIRECTORY = '/data3/idx',
9.
10. PARTITION p2 VALUES IN (2,6,10,14)
11. DATA DIRECTORY = '/data4/data'
12. INDEX DIRECTORY = '/data5/idx',
13.
14. PARTITION p3 VALUES IN (3,7,11,15)
15. DATA DIRECTORY = '/data6/data'
16. INDEX DIRECTORY = '/data7/idx'
17. );
1.3. VALUES value for partition 'p1' must have type INT
是LIST COLUMNS才支持 varchar类型的分区字段
如果你想使用MySQL 5.1中的分区类型,那你必须将类型转换成整数,需要使用一个额外的查找表,到了MySQL 5.5中,你可以不用再进行类型转换了,如:
alter table account
partition by list COLUMNS(plat)
(
partition p1 values in ('io'),
partition p2 values in ('an')
);
1.4. A PRIMARY KEY must include all columns in the table's partitioning function
默认分区限制分区字段必须是主键(PRIMARY KEY)的一部分,为了去除此
建立复合子建
alter table results add PRIMARY KEY(id, ttime);
1.5. 分区以后的数据文件情况
有了个Par文件记录结构。。 Acc#p#p1.ibd。。。 Acc#p#p2.ibd。。
深入解析MySQL分区(Partition)功能 - 浮云中的神马 - 博客频道 - CSDN.NET.html
mysql 分区表详解-布布扣-bubuko.com.html
深入解析MySQL分区(Partition)功能 - 浮云中的神马 - 博客频道 - CSDN.NET.html
作者:: 绰号:老哇的爪子claw of Eagle 偶像破坏者Iconoclast image-smasher
捕鸟王"Bird Catcher 王中之王King of Kings 虔诚者Pious 宗教信仰捍卫者 Defender of the Faith. 卡拉卡拉红斗篷 Caracalla red cloak
简称:: Emir Attilax Akbar 埃米尔 阿提拉克斯 阿克巴
全名::Emir Attilax Akbar bin Mahmud bin attila bin Solomon Al Rapanui
埃米尔 阿提拉克斯 阿克巴 本 马哈茂德 本 阿提拉 本 所罗门 阿尔 拉帕努伊
常用名:艾提拉(艾龙), EMAIL:1466519819@qq.com
转载请注明来源:attilax的专栏 http://www.cnblogs.com/attilax/
--Atiend