mysql workbench 查询分析_MySQL优化 - 性能分析与查询优化

本文探讨了MySQL Workbench在查询分析和性能优化中的应用,包括操作系统层面的CPU、内存、磁盘和网络分析,以及MySQL服务器的性能监控。通过SHOW GLOBAL STATUS等命令检查瓶颈,并强调了查询性能优化的重要性,如避免全表扫描,合理使用索引和优化LIMIT与OFFSET操作。
摘要由CSDN通过智能技术生成

优化应贯穿整个产品开发周期中,比如编写复杂SQL时查看执行计划,安装MySQL服务器时尽量合理配置(见过太多完全使用默认配置安装的情况),根据应用负载选择合理的硬件配置等。

1、性能分析

性能分析包含多方面:CPU、Memory、磁盘/网络IO、MySQL服务器本身等。

1.1 操作系统分析

常规的操作系统分析,在Linux中通常包含一些性能监控命令,如top、vmstat、iostat、strace、iptraf等。

1、内存:内存是大项,高查询消耗大量的查询缓存,内存必须足够,并且给系统本身要预留一些。

2、磁盘:配备高速磁盘+RAID会有更好的读写速度,并且SSD成本逐渐降低,升级成本会在可接受范围。

3、网络:目前市场上千兆万兆网卡已很常见。

4、CPU:虽然很多情况下CPU用不完,但也不能让它成为瓶颈。

生产环境的MySQL多数情况部署在Linux系统中,Linux系统本身可以优化的配置并不多。硬件的选型是复杂,涉及计算机组成的原理性知识,需要额外了解。

1.2 MySQL服务性能分析

MySQL服务器的性能通常通过监控命令查看系统工作状态,确定哪些因素成为瓶颈。

1.2.1  SHOW GLOBAL STATUS

显示了目前MySQL的工作状态,包含很多参数,下面对一些参数进行说明,其余的参考官方说明:

====================================

1. Aborted_clients

如果该值随时间增加,检查是否优雅关闭连接,检查max_allowed_packet配置变量是否被超过导致强制中断。

2. Aborted_connections

接近于0,检查网络问题,如果有少量是正常的,比如鉴权失败等。

3. Binlog_cache_disk_use和Binlog_cache_use

大部分事务应该在缓冲中进行,如果disk cache很大,可考虑增加内存缓存。

4. Bytes_recevied和Bytes_sen

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值