MySQL 索引与优化
最近在搞PHPyun的人才网系统,遇到个致命的问题,用户信息与简历当数据量达到4000条以上的时候,就会无法打开,或者打开巨慢。
这个问题困扰了1天,实在没有头绪,给牛逼的秦同学打电话求助。问题总算得到解决。
问题原因:表 hd_resume 没有创建索引导致。
通过phpmyadmin打开表hd_resume,左下角会出现:
而我所遇到的存在问题的表是:hd_resume与hd_resume_expect,2个表的uid关联。SQL语句如下:
SELECT b.name as username,a.id,a.name,b.email,b.edu,a.exp,a.hits,a.lastupdate,a.provinceid,b.uid FROM hd_resume_expect as a,hd_resume as b WHERE a.uid=b.uid and 1 order by a.id desc limit 0,13
这个问题是在总管理的后台,个人管理,个人简历,点击个人简历就出现巨慢的问题了,数据量单个表在5000条左右。
通过SQL语句不难看出,条件很简单,就是获取2个表里面uid相等的记录,就是如此简单的语句竟然会导致访问巨慢,究其原因就是没有创建索引的问题。
问题解决:通过Phpmyadmin给表hd_resume的uid建立个索引即可。
相关信息:Mysql的索引与优化