mysql 数据几十万 CPU过高
ringa_lee
ringa_lee 2017-04-17 16:28:08
0
4
500

一个数据表数据有几十万的样子 在查询页面反复的时候 CPU特别高基本爆满
SQl语句
select count(*) from emp where catid <> 3 and cid =2; 用户做分页数量
select * from emp limit 1,10; 本页显示的

ringa_lee
ringa_lee

ringa_lee

Antworte allen(4)
刘奇

你这个根本没有访问索引,直接读硬盘数据

Peter_Zhu

sql 语句 发一下。

伊谢尔伦

InnoDB是没有直接保存表的数据总数的,select count(*) from emp;要扫一遍索引,反复查当然要耗CPU。

我的测试表有两千万数据,没缓存时count(*)要15秒,有缓存后也要3秒。

show table status where Name = 'your table name'

可以拿到近似的行数。

黄舟

这个可以用延迟关联查询(索引覆盖查询)

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!