新闻中心

MYSQL数据库单表容量超大而无法使用索引威胁服务器稳定

作者 / 无忧主机 时间 2011-08-21 08:02:13

今天在监控中发现一个站点造成mysql大量占用cpu时间,已经到了崩溃的边缘。我速度对于该站点做出处理。事后,我讲故障整理,并认准做了分析如下,希望日后站长使用无忧系列php虚拟主机产品时候,能避免错误,你我联手维护好虚拟主机服务器稳定运行。 首先,我运行show processlist,并截一个mysql console的图如下:

懂MYSQL数据库的站长,看到这个图就明白意思了。这个是由于用对mysql数据表设计不当导致。单表60W条记录用like来限定条件的时候无法使用索引,造成mysql大量占用CPU

时间,导致cpu和mysql资源被消耗殆尽,威胁服务器正常运行。截图中,已经很好的说明了问题。sending data是从磁盘往内存写数据的意思,正常情况下是不会出现问题的,一旦发生问题,多半是因为客户的单表太大(数据量在万级以上)、没有做优化引起。当前这个故障用户的单表中还有60W条数据左右,后面使用like,由于单表数据量太大,无法索引,这就需要MYSLQ一条一条的查找记录。60W条记录,够服务器“吃”一壶了。

请用户在使用无忧主机产品时,请合理使用服务器资源,爱惜服务器资源。如发生站点异常信息,我公司将直接关闭,不退不换,请大家体谅。

纯Linux环境下高端免备案[香港独立IP地址] php空间,仅仅只需199元一年起。商务中国域名核心代理直销50元注册国际顶级域名。

本文地址:https://www.51php.com/mysql/3319.html

1
1
1
1
1
1
1