Re: [请益] 在资料表上加上索引,却让mysql过载

楼主: liisi (小心一点)   2017-02-17 22:31:36
今天中午和晚上 又发生一次
process 每个都在sending data
然后每次都隔了约一小时 就正常了 = =||
因为是我加上索引才这样 拿掉索引本来想说就好了 结果问题又发生了
我们是用 mysql 5.3
今晚这一次 我就直接叫管理主机的人 帮我加大 key buffer size
希望明天不要再发生
另外..
商品不是10几万笔 是几十万笔
且每一天 都会增加几百笔以上
商品的结构 分成2个table (之前的人设计的)
1个 good_info1 , 1个 good_info2
info1 有几百M , info2却有5G 是1对1的关系 info1有几笔 info2就有几笔
我想说 怎不直接放在同一个table
这样我每次读商品 都一定要join 囧rz
※ 引述《liisi (小心一点)》之铭言:
: 大家晚安
: 想请问一下各位前辈
: 我在商品资料表上的几个字段 加上索引
: 想让网站的某个部分 查询变快一些 (商品资料有几十万笔)
: 中午才加上索引 结果下午有客户反映 网站的浏览速度好像变慢了
: 直到下班的时候 网站就挂点了 进入页面的时间 超级久
: 由于是拍卖平台 这挂点 还得了...........
: 心想说 我今天更新的程式 不足以让网站挂掉啊
: 就去数据库 show full processlist;
: 结果数十笔资料 都在 sending data
: 内容几乎都在做跟商品查询有关的sql语法
: 然后每个process 一直卡住好几10秒
: 我找不出到底问题出在哪 后来想想今天还有做啥事
: 才想到 我有在商品的资料表加上索引
: 然后想说 怎可能加上索引 就发生这种事
: 但是还是想说先把索引拿掉看看
: 结果就好了 结果就好了 结果就好了 结果就好了 结果就好了
: 我一整个百思不得其解 囧rz
: 我们网站的主机 是其他部门在管的
: 我也没办法得知 主机是否有做啥设定之类的
: 只能来这问问大家 问题到底出在哪
: 拜托了 各位Q_Q
作者: dinos (守护神)   2017-02-17 22:52:00
有可能info1放列表用到的,info2放详细资料
作者: j87b0003 (I'm 邱老虎)   2017-02-17 23:01:00
其实可以做view吧?
楼主: liisi (小心一点)   2017-02-17 23:07:00
1F 是的 但是info1也很重要 这样不如只存一table就好 = =资料量如果很大 用view反而不好 因为订单 也会跟商品做join
作者: xdraculax (首席怪叔叔)   2017-02-18 08:23:00
是我也会分两个表 0.0
作者: wilson200106 (种子种子)   2017-02-18 09:55:00
一个table更可怕 你连join其他表都会顿
作者: terrybob (罪云樵)   2017-02-18 17:22:00
分割2个表比较好。目前状况来说,考虑把第2个也分割吧
作者: et69523820 (小猪)   2017-02-20 00:16:00
看起来是Join的问题 把Join拿掉应该就顺了Join会有乘积效应 info1取出数量 * info2取出数量假设info1有一万笔 info2有一万笔 这样就是一亿笔

Links booklink

Contact Us: admin [ a t ] ucptt.com