文章详情页
mysql 数据几十万 CPU过高
浏览:101日期: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. javascript - npm start 运行’webpack-dev-server’报错 Cannot find module ’webpack’2. 为什么我ping不通我的docker容器呢???3. 关于docker下的nginx压力测试4. 服务器端 - 采用nginx做web服务器,C++开发应用程序 出现拒绝连接请求?5. python - pandas按照列A和列B分组,将列C求平均数,怎样才能生成一个列A,B,C的dataframe6. javascript - nidejs环境设置操作一直出现这种问题怎么解决?7. java - Tomcat 不同的域名访问同一个项目的不同网页8. java - 静态属性中的赋值和静态代码块中的赋值有什么区别?9. dockerfile - [docker build image失败- npm install]10. javascript - Angular controlller控制域和原生js的关系
排行榜
