文章详情页
mysql 数据几十万 CPU过高
浏览:163日期: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. docker start -a dockername 老是卡住,什么情况?2. java内存模型的happens-before语义顺序问题3. java - 并发操作下关于队列的疑问?4. 编程 - java 为什么没有静态方法接口,有没有哪门语言有静态方法接口。5. objective-c - iOS开发使用什么对html进行代码高亮6. linux - 阿里云服务器(centos)中svn同步web目录的问题?7. android - as添加依赖时一直是gradle:download状态8. :not 选择器 无效果 原因何在?9. mysql插入文本如果是个sql语句就报错了10. 在html文件的目录下输入代码按回车后显示这个,哪位大佬帮帮我 呀
排行榜
