一般来说mysql数据库优化要从下面几个方面进行优化,对于开发者,接触得最多的就是sql语句优化。我之前也是这么认为的,但是后来发现,要想提高mysql的整体性能,光是sql语句优化还不够。 就比如系统配置优化,即使服务器性能很好,但是系统配置没有完全发挥硬件性能,这样也没达到最大优化效果。
优化方面
1. 硬件优化
- 增加服务器性能,cpu、内存、核心数、
2. 系统配置优化
- 连接数配置
- 占用内存
- 连接池
3. 表结构优化
- 数据类型(char vs varchar 、datetime vs timestamp)
- 数据类型长度(tinyint、int、bigint、long、decimal、float、double)
- 数据冗余(范式化)
- 存储引擎(MyISAM(没有事务,查询快)、InnoDb(有事务,行级锁)、Memory)
4. sql和索引优化
关于sql和索引优化,看我写的两篇文章
参考资料
总结
此篇文章意在从总体上把握mysql优化,并不深入各项细节,所列举的也只是提示,通过提示回顾知识。