MySQL 5.7 优化不求人 性能专题
MySQL 5.7 新增了众多特色功能,诸如 Optimizer 增强、支持多个触发器、P_S 增强、增加 sys schema、在线修改 VARCHAR 长度、并发复制等,对于提升 SQL 效率都有很大帮助,作为非专业 DBA,如何利用这些特性帮助我们做好 SQL 优化呢?
主要内容有:
1、MySQL 5.7关键新特性
a) MySQL 5.7性能提升;
b) MySQL 5.7新特性,Server层优化、InnoDB层优化、Optimizer优化、EXPLAIN CONNECTION、JSON、虚拟列、新增sys schema、performance schema增强等等;
2、MySQL 5.7下的SQL优化招数
a) 如何设置SQL超时,避免个别垃圾SQL破坏生产环境;
b) 如何查看某个线程当前执行的SQL效率;
c) 如何找到性能瓶颈SQL;
d) 如何找到消耗最多内存的SQL;
e) 如何找到哪些SQL被频繁执行;
f) 如何找到慢SQL中的TOP 10;
g) 哪个文件(数据表)产生了最多的IO,读多,还是写的多;
h) 如何找出哪些利用率很低的索引; 以及其他等等。
3、关注MySQL 8.0新特性
a) 重大变化,数据字典改用InnoDB,不再使用MyISAM引擎,顺便实现了DDL的原子性;
b) 重大变化,增加不可见索引(INVISIBLE INDEX),方便删除利用率很低的索引;
c) 重大变化,增加支持倒序索引;
d) 重大变化,重构Optimizer,HINT增强等;
以及其他等等。