一、SQL执行过程
1、用户连接数据库,执行SQL语句;
2、先在内存进行内存读,找到了所需数据就直接交给用户工作空间;
3、内存读失败,也就说在内存中没找到支持SQL所需数据,就进行物理读,也就是到磁盘中查找;
4、找到的数据放到内存中,在内存进行数据过滤再放到会话工作空间。
5、假设会话工作空间需要暂存结果集进行排序,但空间不足的话,就会借用磁盘tmpdir,最后再将结果返回给用户。
注:
用户会话空间是内存中分配出来的一个工作空间,而innodb_buffer_pool是innodb存储引擎在内存中的一个缓冲池。
一个SQL执行速度快并不能说明这个SQL没有性能问题,SQL性能不是一定需要利用并发来测试,主要是看其资源消耗点。