magento搬家的方法
时间:12-05-22 栏目:MagenTo作者:admin 评论:3 点击: 4,568 次
范例:从http://www.youdomain.com 迁移到http://www.newsite.com。
一、首先要通过phpMyAdmin备份整个magento的数据库。备份数据并且存为.SQL.
二、接着打开你的备份文件(.SQL),查找并且替换所有的 “www.youdomain.com” 到“www.newsite.com”. 必须在导入数据之前完成,不然新的MAGENTO将会全部瘫痪。
三、 接着别关闭你的备份文件(.SQL),还有重要一步就是必须强制关闭相关的“数据库关键字的关系”。
请拷贝下面代码放在你的SQL代码的顶部:
1
2
3
4
5
6
7
8
SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT;
SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS;
SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION;
SET NAMES utf8;
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO';
SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0;
接着将下面的代码放在你的SQL代码的底部:
1
2
3
4
5
6
7
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT;
SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS;
SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION;
SET SQL_NOTES=@OLD_SQL_NOTES;
四、接下来,保存后压缩你的数据库(.SQL)文件,结尾为ZIP格式。因为我的原SQL文件大约8MB,但是压缩之后只有500KB,这样可 以大大加速上传的时间。记住,请用PHPMYADMIN上传。如果数据库比较大,你可以修改服务器运行时间。
五、把原网站所以文件拷贝到你要迁移的服务器上。
六、现在你需要打开htdocs/app/etc/local.xml并且修改其中的数据库连接到新服务器的数据库(对应www.newsite.com).保存你的修改。现在你的magento应该可以工作了。
七、最后还有一样事情你需要做,那就是修改 .htaccess文件. 如果你迁移是从一个服务器到另外一个服务器,而且所有的绝对路径是相同的,你不需要做任何事情。
但是如果你是从子文件夹http://www.youdomain.com/store/移动出来,你需要修改.htaccess 中 “RewriteBase/magento/” 部分。并且搜索替换SQL中相关的部分,例如“http://www.youdomain.com/store”换成“http: //www.newsite.com/” 。
注意:
如果恢复SQL的过程中出现如下错误:
Mysql查询错误
查询语句:DROP TABLE IF EXISTS `mg_admin_role`
错误信息:Cannot delete or update a parent row: a foreign key constraint fails
就是因为MySQL外键约束导致mysql还原出错,可以在
在恢复数据之前运行下面语句,取消外键检查
SET FOREIGN_KEY_CHECKS = 0;
恢复之后再运行:
SET FOREIGN_KEY_CHECKS = 1;
即可。
网友评论