[SQL ] MySQL千万笔资料Select很久

楼主: oilolio (OG8)   2019-02-14 20:24:44
数据库名称:MySQL
数据库版本:5.5.60
内容/问题描述:
想请问各位版上大神,小弟数据库有几个table资料数超过百万,更有三四个超过
三四千万还在持续长大,使用GCP的主机8核16G内存,先不论程式码或SQL语句优化
目前光是一般的Select不加任何Where条件,LIMIT一百万笔出来就需要花上一分钟以上
,三四千万的table直接卡住,请问是config档没有设定好吗?有哪些设定最主要影响的吗?
google到的设定改了之后都无感,但两三百万笔的资料搜寻会需要这么久吗?
有劳各位大神指点迷津了!
作者: jojobill (..)   2019-02-14 22:19:00
Schema设计, config, GCP 机器规格, 这些资料都没有,版友需要强大的通灵能力才能知道发生什么问题
作者: AndCycle (AndCycle)   2019-02-14 23:40:00
以前接过连index都没设定还上线了好几年的烂案子 ...
作者: jojobill (..)   2019-02-15 08:19:00
所以你用MyISAM来跑吗? 因为你key_buffer_cache开了1G,join_buffer, sort_buff 都是session base的, 你开1G完全错误,直接抓掉这两个设定吧. query_chche 请直接关了,非常无用正常来说使用InnoDB是比较常见的engine, 用到MyISAM 大概都是当年默认直接上. Table 有pk吗, index有开太多吗
作者: et69523820 (小猪)   2019-02-20 03:49:00
我觉得关键是LIMIT 依你的描述一张表有超过千万LIMIT 0,1000000 快LIMIT 30000000,1000000 慢LIMIT 500000,1000000 快关键在于前面的数字 比如第二条规则他是把数据库读取3千万笔资料出来 在读取一百万而不是指标订在3千万笔的点 在读取一百万要想办法把前面数字压低
作者: bestlong (bestlong)   2019-03-21 19:04:00
用EXPLAIN分析看看吧,没有schema与SQL资讯,难解啊

Links booklink

Contact Us: admin [ a t ] ucptt.com