-查询所需要的字段
-合理的添加索引
-拆分大的Delete,Insert 语句
-经常不用的字段拆分出去,last_login, home_address
-使用Join 代替子查询
-Explain select 语句
-定期Optimize Table
-合理的设计表,合理的使用字段类型,TIMESTAMP 代替 datetime
-每个表有一个主键ID,unsigned,AUTO_INCREMENT, not null
-对一个字段尽量不要使用null
-查询的时候尽量不要使用格式转换,先转换变量再查询
-使用哈希索引
如果在一个很长的字符串列上做精确查找,直接建立索引可能不是最好的办法,这会导致占用更多磁盘空间和索引效率的降低,例如这个查询
select url from myurls where url='http://blog.csdn.net/autfish/article/details/51660864';
1
可以考虑从应用层面上优化,对myurls表增加一个int列hashurl,在插入记录时通过一定哈希算法计算url的哈希值,记入hashurl列,并对该列建立索引
查询语句修改为:
select url from myurls where hashurl=3346369 and url='http://blog.csdn.net/autfish/article/details/51660864';
网友评论