mysql性能优化

mysql性能优化,第1张

mysql性能优化

1 mysql性能优化涉及的层面非常复杂,通常我们将其分为三个阶段优化,性能依次提升

(一)硬件

硬件层面优化方案通常是费力不讨好的事情,硬件的升级消耗的资源(时间,财力等)比较昂贵但是得到的效果却也是比较差的,一般我们不会采用这类优化手段

(二)sql语句优化,

通常我们会聚焦到这个方面来进行sql语句的优化,在优化过程中尽量让mysql走索引查询,针对不同的存储引擎,也有不同的优化手段,这里只讲Innodb,

我们通常可以优化方案有:

索引优化,让查询数据尽量走索引,对于不需要查询的列数剧尽量不要全部查询出来.可以充分利用覆盖索引,主键索引减少回表次数

添加缓存:对于变动频率比较小的表数据,我们可以添加缓存,减少IO *** 作.

减少查询扫描行数:对于业务比较负责的查询,我们也可以进行sql的拆分,将一个复杂的查询拆分成多条简单的sql,虽然IO成本会增加,但是相对于10来秒的一个查询来说,拆分带来的效率提升也是很客观的.

对于慢查询来说可以通过开启慢查询日志来分析问题,mysql也提供一个工具供我们使用mysldumpslow,大家感兴趣可以去百度一下~

这里可以通过explain关键字来分析,后续会专门出一篇关于explain关键字的文章,敬请期待.

(三)mysql架构优化

对于日常业务比较负责,我们拆分了服务情况下依然出现了性能瓶颈的,我们可以进行表和库的拆分,读写分离,mysql集群等,这类的优化方案通常是效果最好的,也是我们首选的优化方案.

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5712493.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-18

发表评论

登录后才能评论

评论列表(0条)

保存