关于MySQL瓶颈分析与性能优化的一些思考

时间:2021-05-03 19:52:17

    这个提到mysql的一个优化和瓶颈分析,相信大家都不陌生,本人认为呢,一句话,就是在现有的资源上“读”&“写”之间的再平衡。这里呢,本人就谈一谈自己的一些见解(简单的总结而已,一些思考的方案)。

    先说这个优化吧。MySQL数据库优化可以在多个不同的层级进行,常见的有sql优化,配置参数优化,数据库架构优化等这几方面。

    其中这个sql优化,相信大家都不陌生。归根结底呢,就是来看有那个sql拖慢了程序运行,或者造成了内存等方面的困扰。找到它并且修改它。因为程序运行之初,谁都不知道哪里的sql会出现问题。所以我们不妨借助一些检测工具或者命令来查看,其中explain这个就厉害了。等等吧就是,很多方案,这里就不一一例举了。不过,在这方面优化的时候,往往是和程序相关的,所以当这方面从数据库本身无法进行优化的时候,各位不妨考虑结合一下程序,看看有什么方案没。

    其次,就是这个配置参数了。这个,就是搞事情了,这个和瓶颈结合在一块了。毕竟咱们不是专业的DB,所以只能浅浅的了解下了。原则上呢,就是通过工具或者show global status 的各个计数器的值来分析出当前瓶颈所在,再结合一些简单的系统层面的监控工具如top iostat 就能明确瓶颈。完事就是平衡“读”&“写”之间的关系了。根据瓶颈所在,不断地调整各个参数的值,最终达到一个完整的平衡。

    再来就是数据库架构的优化了。这个,范围就大了,在下也不敢多言,只能说最终的无非就是集群,所以,各位大佬,就看各自情况而定吧。

    总的来说一句话,mysql的整体性能是“读”&“写”之间的再平衡,了解了这个,优化就有着落了。