ecshop前台ecs_sessions表报错的解决办法

2018-10-1109:38:51网站建设与开发Comments3,759 views字数 1075阅读模式

第一种错误:

  1. MySQL server error report:Array ( [0] => Array ( [message] => MySQL Query Error ) [1] => Array ( [sql] => INSERT INTO `test`.`ecs_sessions` (sesskey, expiry, ip, data) VALUES (’8a3107988bf98cc9a5079fdfbe766120’, ’1278128679’, ’127.0.0.1’, ’a:0:{}’) ) [2] => Array ( [error] => Table ’test.ecs_sessions’ doesn’t exist ) [3] => Array ( [errno] => 1146 ) )

第二种错误:

  1. MySQL server error report:Array ( [0] => Array ( [message] => MySQL Query Error ) [1] => Array ( [sql] => INSERT INTO `cc`.`ecs_sessions` (sesskey, expiry, ip, data) VALUES (’4b5c9bb5f23d7a1cebd1c1f4ad6682ee’, ’1270728928’, ’218.74.203.161’, ’a:0:{}’) ) [2] => Array ( [error] => The table ’ecs_sessions’ is full ) [3] => Array ( [errno] => 1114 ) )

提示The table ’ecs_sessions’ is full
打开ecs_sessions表发现里面的数据有好几十页(每页1000)。那怪会提示满了!但是很奇怪,为什么会存在这么多的数据在里面呢。不可能一天有这么多人在访问! 网站运行了好几个月了,没出现这种问题!这个表是ecshop模拟session存储临时信息用。分析cls_session.php文件,发现自己将session过期日期写的好大,而最近网站的访问量持续增大,造成旧的数据不能及时的清除造成的。将过期时间缩短到一定时间,这个时间根据具体情况而定了。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/6530.html

以上两种情况的解决办法:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/6530.html

1、直接清空session表

可以到后台 数据库管理-sql 查询里执行这个语句文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/6530.html

  1. delete from ecs_sessions

或者登录phpmyadmin 清空 ecs_sessions 表
清理完缓存就发现不会报错了文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/6530.html

2、同时可以设置一下session的失效时间

打开Includes下cls_session.php
修改过期时间,数值改小就可以了
var $max_life_time = 1000; // SESSION 过期时间文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/6530.html

  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/cms/6530.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定