便宜VPS网为回馈新老顾客,香港vps免费送,数量有限,先到先得!手慢无!

解决ecshop搬家恢复出现ecs_sessions问题

其他知识 便宜vps网 2472℃

ecshop 网店程序在搬迁空间或恢复备份或更换域名出现 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.关闭网站(防止新的访问更新数据库造成数据不完整)
2.进入ecshop后台备份数据库(备份前可以先清理下数据库中的碎片,然后选择完全备份)
3.下载整站数据(可以用主机上带的rar打包解压功能将整站打包,这样下载比较快)
4.上传整站数据到新空间(尽量保证新空间的php与mysql版本与原空间相同,考虑兼容性,特别是数据库的兼容性。如果上传的是整站压缩包,需要主机支持rar解压),期间的域名的DNS解析等修改跳过
5.接下来是恢复数据库,可以采用2个方法
a.上传ecshop的安装程序,默认安装后进入后来进行恢复操作
b.用主机上的phpmyadmin进行恢复操作(如果数据比较多,sql文件比较多,这个比较麻烦的)
6.恢复完成后打开网站,发现出错:出错关键字 sesskey 1146
查看了现在的数据库与原来数据库表的差别,发现少了两个表(默认前缀)
ecs_sessions 跟 ecs_sessions_data
建立它们(只能用phpmyadmin)
SQL代码
程序代码
Create TABLE `ecs_sessions` (
  `sesskey` varchar(32) binary NOT NULL default ”,
  `expiry` int(10) unsigned NOT NULL default ‘0’,
  `userid` mediumint(8) unsigned NOT NULL default ‘0’,
  `adminid` mediumint(8) unsigned NOT NULL default ‘0’,
  `ip` varchar(15) NOT NULL default ”,
  `user_name` varchar(60) NOT NULL default ”,
  `user_rank` tinyint(3) NOT NULL default ‘0’,
  `discount` decimal(3,2) NOT NULL default ‘0.00’,
  `email` varchar(60) NOT NULL default ”,
  `data` varchar(255) NOT NULL default ”,
  PRIMARY KEY  (`sesskey`),
  KEY `expiry` (`expiry`)
) TYPE=HEAP;
Create TABLE `ecs_sessions_data` (
  `sesskey` varchar(32) binary NOT NULL default ”,
  `expiry` int(10) unsigned NOT NULL default ‘0’,
  `data` longtext NOT NULL,
  PRIMARY KEY  (`sesskey`),
  KEY `expiry` (`expiry`)
) TYPE=MyISAM;
然后再次打开,问题解决

原创文章,转载请注明: 转载自VPS面板知识

本文链接地址: 解决ecshop搬家恢复出现ecs_sessions问题

VPS面板知识: 便宜VPS网–便宜技术|Windows VPS面板知识 | Linux VPS面板知识

友情链接:便宜vps网 真诚为您推荐最合适的vps服务器,详情咨询860001083


在线咨询

文章的脚注信息由WordPress的wp-posturl插件自动生成

转载请注明:VPS面板知识 » 解决ecshop搬家恢复出现ecs_sessions问题

喜欢 (0)or分享 (0)