急,SQL语句导致服务器CPU超限
2016-07-07 15:18 来源:www.chinab4c.com 作者:ecshop专家
我用的是国外HOSTMONSTER的主机,对CPU有限制,今天频繁超限,经查, 主要原因是由于下面一条语句频繁执行引起的, 我查了这条语句在cls_session.php文件里,但不知道为什么今天这么频繁执行这条语句? 拜托斑竹们帮忙,谢谢了,急死我了。 DELETE FROM `maildb_maildata`.`ecs_sessions_data` WHERE expiry < 1205111969 |
回答:
这是删除数据库的session的,比如一个用户退出的时候,就要调用这个语句 |
感谢楼上的,但是为什么总是造成CPU占用很长时间呢,我查了下原程序语句如下, 我已经把这句删除上传了,过一会看看还会不会出现这个问题, /* 随机对 sessions_data 的库进行删除操作 */ if (mt_rand(0, 2) == 2) { $this->db->query('DELETE FROM ' . $this->session_data_table . ' WHERE expiry < ' . ($this->_time - $this->max_life_time)); } if ((time() % 2) == 0) { return $this->db->query('DELETE FROM ' . $this->session_table . ' WHERE expiry < ' . ($this->_time - $this->max_life_time)); } return true; |
经过我自己查数据库记录, 发现原因可能是数据库空了以后(即ecs_sessions_data这个表中已经没有记录了)的时候, 这句还执行操作, 所以造成了MYSQL死锁, 不知道分析的对不对,各位大虾不忙的话帮忙看下,谢谢了 |
现在会员也不能登陆了 |
看了老大们置顶的帖子,现在已经很好很OK了, 不过删除了那两句代码不知道会出现什么问题,哎~~,等老大们帮我出出主意 使用问题 如何修复数据表 例如:ecs_sessions.MYI报错 [url=thread-29206-1-1.html]http://bbs.ecshop.com/thread-29206-1-1.html[/url] |
终于OK了,把原来的cls_session.php文件又重新上传了下,正常了, 原来不是cls_session.php把数据库弄坏了, 而是数据库先被破坏了,然后造成了cls_session.php执行错误。 修复了数据表后就好了。 |
请教版主,是怎么修复的数据表,是后台的那个功能吗。 什么数据库修复什么的那个功能是吗。 |
是的你的表文件现在是出问题的 另外空数据表是不会锁表的 |
我的也经常这样 |
最近更新
常用插件
- ecshop供应商插件免费下载
ecshop供应商插件免费下载...
- ecshop快递发货单打印商品
ecshop快递发货单打印商品信息,大家都知道ecshop快递单打印的时候,只能...
- ecshop按分类筛选销售排行
ecshop按分类筛选销售排行...
- ecshop选择下单时间插件
ecshop选择下单时间插件主要是根据不同的下单配送要求,在ecshop购物车...
- ecshop二次开发售后维修卡
插件介绍: 本插件是用于专门从事电子,信息,软件等售后服务关键比...
ecshop热门问答
ecshop热门资料
ecshop品牌图标
ecshop一篇文章
ecshop性别
ecshopmarquee
编译redis
ecshop多仓库库存
调用标签
div底部
ecshop电容器
ecshop模板变量
ecshop资料库
ecshop损害
qq登录ecshop
ecshop变乱
ecshop图案
ecshop库项目
ecshopECMALL第三方登陆
ecshop访客
ecshop商城简写
ecshop电话卡
ecshopHISHOP
ecshopuft8
ecshop收发邮件
ecshop电子票
ecshop头顶
ecshop斑竹
ecshop网店设置
ecshop優惠
ecshop商品页
ecshopbrowse