key_buffer_size指定索引缓冲区的大小,它决定索引处理的速度,尤其是索引读的速度。通过检查状态值Key_read_requests和Key_reads,可以知道key_buffer_size设置是否合理key_buffer_size 对MyISAM表性能影响很大.1、查询 mysql> show variables like 'key_buffer_size
分类:
数据库 时间:
2018-06-19 13:40:18
阅读次数:
147
[csharp] view plain copy print? 下面我们了解一下MySQL优化的一些基础,MySQL的优化我分为两个部分,一是服务器物理硬件的优化,二是MySQL自身(my.cnf)的优化。 一、服务器硬件对MySQL性能的影响 ...
分类:
数据库 时间:
2018-06-17 15:17:07
阅读次数:
219
做后台开发的程序猿通常需要写各种各样的sql,可很多时候写出来的sql虽然能满足功能性需求,性能上却不尽人意。如果业务复杂,表结构和索引设计又不合理的话,写出来的sql执行时间可能会达到几十甚至上百秒,对于生产环境来说,这是相当恐怖的一件事。因此,了解一些常见的mysql优化技巧很有必要。本文将从表 ...
分类:
数据库 时间:
2018-06-16 19:34:39
阅读次数:
209
转于:https://blog.csdn.net/claram/article/details/77574600 首先明确:为什么要用联合索引? 对于查询语句“SELECT E.* FROM E WHERE E.e1=1 AND E.e3=2”涉及到两列,这个时候我们一般采用一个联合索引(e1, e ...
分类:
数据库 时间:
2018-06-13 14:44:01
阅读次数:
252
最近慢慢接触MySQL,了解如何优化它也迫在眉睫了,话说工欲善其事,必先利其器。最近我就打算了解下几个优化MySQL中经常用到的工具。今天就简单介绍下EXPLAIN。 内容导航 id select_type table type possible_keys key key_len ref rows ...
分类:
数据库 时间:
2018-06-12 16:21:21
阅读次数:
222
using filesort 一般出现在 使用了 order by 语句当中。 using filesort不一定引起mysql的性能问题。但是如果查询次数非常多,那么每次在mysql中进行排序,还是会有影响的。 这里的优化方式是在order by 的字段建立索引,例如 语句: SELECT FRO ...
分类:
数据库 时间:
2018-06-12 12:50:16
阅读次数:
167
在MySQL中,我们可以将NOT EXISTS语句转换为LEFT JOIN语句来进行优化,哪为什么会有性能提升呢? 使用NOT EXISTS方式SQL为: 而使用LEFT JOIN方式SQL为: 从查询效果来看,NOT EXISTS 方式耗时29.38秒,而LEFT JOIN方式耗时1.20秒,性能 ...
分类:
数据库 时间:
2018-06-11 17:15:47
阅读次数:
184
//假设一个for循环 for($i = 0; $i < 10000; $i++) { for ($j = 0; $i < 50; $j++) { } } for($i = 0; $i < 50; $i++) { for ($j = 0; $i < 10000; $j++) ...
分类:
数据库 时间:
2018-06-11 15:46:40
阅读次数:
200
一、索引失效的情况 前文提及过可以通过explain的possible_keys、key属性判断索引是否失效,key如果为null,可能是索引没建,也可能是索引失效,下面列举一些会使索引失效的情况。 1、全值匹配:顺序、个数与索引一致 2、最佳左前缀法则:查询从索引的最左前列开始并且不跳过索引中的列 ...
分类:
数据库 时间:
2018-06-10 18:58:51
阅读次数:
232
Explain是Mysql的自带查询优化器,负责select语句的优化器模块,可以模拟优化器执行SQL查询语句,从而知道Mysql是如何处理SQL的,语法也很简单:Explain + SQL 以下是通过explain查询出的几个属性 (常见性能瓶颈 —— CPU:CPU饱和一般发生在数据装入内存或从 ...
分类:
数据库 时间:
2018-06-09 20:33:39
阅读次数:
246