Mysql查询很慢卡在sending data的原因及解决思路讲解
发表于:2025-11-06 作者:千家信息网编辑
千家信息网最后更新 2025年11月06日,因为编写了一个Python程序,密集的操作了一个Mysql库,之前数据量不大时,没发现很慢,后来越来越慢,以为只是数据量大了的原因,但是后来慢到不能忍受了,查了半天,索引能用的都用上了,执行一次还是要
千家信息网最后更新 2025年11月06日Mysql查询很慢卡在sending data的原因及解决思路讲解
因为编写了一个Python程序,密集的操作了一个Mysql库,之前数据量不大时,没发现很慢,后来越来越慢,以为只是数据量大了的原因,但是后来慢到不能忍受了,查了半天,索引能用的都用上了,执行一次还是要3到4秒,不能忍受了。
于是把一些可以缓存的查询全部用redis缓存了起来,大大加速了应用。
但是还是有一些没办法缓存的,或者说,每次查询都是不一样的结果的就没办法了。用navicat的查询概况可以看到卡住的地方是在:Sending data一段,用时3.5秒,占了99%的查询时间。
在网上查了一些,有些是因为sql语句的问题,但是我这个完全没有用到varchar,也没用到in方法。
于是想是不是表太大了,可能没有缓存到内存中,于是先查mysqld进程占的内存,才50多M,明显太少了,那张表的实际容量有200多M,这个可以在navicat的对象一栏看到,应该是每次查都是从磁盘读取,所以很耗费时间,于是查看win10的磁盘IO,发现确实是这样,磁盘IO达到了100%,还是固态硬盘,每秒读取80M左右,难怪这么慢了。
于是查了mysql的配置文件,发现有一项配置才32M,调成512M,重启mysql,搞定这次从3.5秒变成了0.76秒了。
配置项是:
innodb_buffer_pool_size=32M
这是mysql5.7默认的,改成512或1024,再重启即可,看你的硬件配置。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。如果你想了解更多相关内容请查看下面相关链接
查询
缓存
配置
内容
磁盘
还是
内存
办法
数据
时间
学习
原因
明显
不大
价值
只是
固态
地方
实际
容量
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
湖北武汉网络技术有限公司
网络安全技术和信息系统
宜家软件开发有限公司
未发生网络安全事件
魔兽服务器断开
服务器路径泄露安全检测
维护网络安全课件
张店企业管理软件开发价格
用服务器做网关
服务器安全软件哪个好
网络安全杯颁奖典礼
体育数据库软件选题
治安反恐网络安全
软件开发属于中专的哪个专业
合肥服务器维护
杭州上位机软件开发兼职
深信服网络技术工程师面试
简单的数据库登录页面设计
软件开发模型智能模型
巴彦淖尔市网络安全处置
韩服服务器
2019年世界网络安全排名
数据库 西安交通大学
ftp与服务器无法连接
数据库求余数函数
盐城服务器机房搭建报价
建网站租服务器
数据库避免更新异常
数据库主键和外键叫什么功能
对日软件开发qq群