目录
MySQL调优是一个综合性的过程,涉及多个方面,需要从多个维度入手。
数据类型优化
一般情况下,应该尽量使用可以正确存储数据的最小数据类型。更小的数据类型通常更快,因为它们占用的磁盘、内存和CPU缓存的空间更少,并且处理时需要的CPU周期也更少。
索引优化
创建高性能的索引。
前缀索引、唯一索引、多列索引(选择合适的索引列顺序)。
对于很长BLOB,TEXT或者很长的VARCHAR类型的列,必须使用前缀索引,因为MySQL并不支持对这些列的完整内容进行索引。
查询性能优化
优化数据访问
是否向数据库请求了不需要的数据。
重构查询的方式
一个复杂查询还是多个简单查询。
切分查询。
分解联接查询(将查询分解后,执行单个查询可以减少锁的竞争)。
优化特定类型的查询
优化COUNT()查询。
优化联接查询。
优化UNION查询。
服务器设置优化
设置MySQL最大连接数、连接的超时时间。
操作系统和硬件优化
足够的内存、快速的存储设备。