日期:2014-05-16  浏览次数:20778 次

一百万数据索引实例测试--mysql

推荐书籍:http://pan.baidu.com/s/1sjJIyRV

任务描述:

假设一高频查询如下 
SELECT * FROM user WHERE area='amoy' AND sex=0 ORDER BY last_login DESC limit 30; 
如何建立索引?描述考虑的过程

user表如下: 
初始化100W条数据,其中,area要通过IP查询生成,sex为 0,1 随机

CREATE TABLE user ( 
id int(10) NOT NULL AUTOINCREMENT COMMENT '自增编号', 
username varchar(30) NOT NULL DEFAULT '0' COMMENT '用户名', 
password varchar(30) NOT NULL DEFAULT '0' COMMENT '密码', 
area varchar(30) NOT NULL COMMENT '地址', 
sex int(10) NOT NULL COMMENT '性别0,男;1,女。', 
last_login int(10) NOT NULL COMMENT '最近一次登录时间戳', 
PRIMARY KEY (id
) ENGINE=InnoDB AUTO
INCREMENT=892013 DEFAULT CHARSET=latin1