ecshop中ecs_sessions 总报错

作者 :
免费
  • 正文
  • 第一种错误:

    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 ) )
    第二种错误:

    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过期日期写的好大,而最近网站的访问量持续增大,造成旧的数据不能及时的清除造成的。将过期时间缩短到一定时间,这个时间根据具体情况而定了。

    以上两种情况的解决办法:

     

    1.直接清空session表

    可以到后台 数据库管理-sql 查询里执行这个语句

    TRUNCATE ecs_sessions

    不建议使用 delete from ecs_sessions

    清理完缓存就发现不会报错了
    2.同时可以设置一下session的失效时间

    打开Includes下cls_session.php

    修改过期时间,数值改小就可以了

    var $max_life_time = 1000; // SESSION 过期时间

    END
    如本资源侵犯了您的权益,请联系投诉邮箱admin@wmphp.com进行举报!我们将在收到邮件的1个小时内处理完毕。 本站仅为平台,发布的资源均为用户投稿或转载!所有资源仅供参考学习使用,请在下载后的24小时内删除,禁止商用! Wmphp.com(完美源码)助力正版,如您有自己的原创产品,可以联系客服投稿,代理出售! Wmphp.com(完美源码)客服QQ:136882447 Wmphp.com(完美源码)商务电话(仅对企业客户/个人用户):15120086569 (微信同步) 请注意:本站不提供任何免费的技术咨询服务,为了节约时间,下载前 请确认自己会技术
    完美源码 » ecshop中ecs_sessions 总报错
    3487+

    本站勉强运行

    3665+

    用户总数

    690+

    资源总数

    0+

    今日更新

    2024-4-8

    最后更新时间