文章详情页
mysql 数据几十万 CPU过高
浏览:58日期:2022-06-15 08:12:47
问题描述
一个数据表数据有几十万的样子 在查询页面反复的时候 CPU特别高基本爆满SQl语句select count(*) from emp where catid <> 3 and cid =2; 用户做分页数量select * from emp limit 1,10; 本页显示的
问题解答
回答1:你这个根本没有访问索引,直接读硬盘数据
回答2:sql 语句 发一下。
回答3:InnoDB是没有直接保存表的数据总数的,select count(*) from emp;要扫一遍索引,反复查当然要耗CPU。
我的测试表有两千万数据,没缓存时count(*)要15秒,有缓存后也要3秒。
show table status where Name = ’your table name’
可以拿到近似的行数。
回答4:这个可以用延迟关联查询(索引覆盖查询)
相关文章:
1. 微信小程序如何将获取的时间戳提交到数据库?2. node.js - 微信的自动回复问题3. python - Scrapy中xpath用到中文报错4. mysql - spring data jpa 方法sql复杂查询?5. mysql - 为什么innodb下更新A行时B行也被锁住?6. node.js - nodejs中mysql子查询返回多行结果怎么处理?7. python - 如何给模块传参数,参数是模块的函数名?8. 请问python中为什么我用for循环对嵌套列表进行赋值时,都是以i的最终值来计算的?9. linux - python编译ssl错误10. javascript - 我写的href跳转地址不是百度,为什么在有的机型上跳转到百度了,有的机型跳转正确
排行榜