mysql对于大量数据,怎么进行优化
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql对于大量数据,怎么进行优化相关的知识,希望对你有一定的参考价值。
参考技术A 1)调整服务器的性能参数:key_buffer_size、Innodb_buffer_pool_size进行合理的配置2)建立合适的索引
3)写查询语句用explain分析一下执行过程,核实一下执行计划,是否按照自己的意愿执行。
索引使要注意的地方:
1)索引不会包含有NULL值的列(使用索引的列设需要置默认值)2)使用短索引 3)不要在列上进行运算,即操作符号左端(使用函数)4) like语句操作5)不使用NOT IN和<>操作6)复合索引的建立7)选择自己使用的索引: USE INDEX , IGNORE INDEX , FORCE INDEX 8) where子句中已经使用了索引的话,那么order by中的列是不会使用索引的(使用复合索引解决)
表扫描要注意的地方:
1)数据表很小,全表扫描比做索引键的查找来得快。当表的记录总数小于10且比较短时通常这么做。
2)没有合适用于 ON 或 WHERE 分句的索引字段。
3)让索引字段和常量值比较,mysql已经计算(基于索引树)到常量覆盖了数据表的很大部分。
4)通过其他字段使用了一个基数很小(很多记录匹配索引键值)的索引键。这种情况下,MySQL认为使用索引键需要大量查找,还不如全表扫描来得更快。
5)使用合适的索引可以解决表扫描
6) 使用Limit有时候也可以解决表扫描
优化的地方太多了,一一列举不完,你可以去这里看一下,这里面关于优化的知识有很多
http://www.quzixi.com/forum-2-2.html,如果觉得说的有用就给个好评,写这么多怪不容易的,用了我一刻钟的时间呀
以上是关于mysql对于大量数据,怎么进行优化的主要内容,如果未能解决你的问题,请参考以下文章