Magento - 升级网站1.4到1.6.1.0问题

时间:2011-12-01 05:34:43

标签: magento

我正在将现有的magento网站升级到1.4到1.6.1.0。

  • 我已经转储了现有的数据库,
  • 在空白magento 1.6.1.0版
  • 中复制了所有必需的自定义扩展程序

运行安装后出现以下错误:

  

文件错误:   “/app/code/core/Mage/Customer/sql/customer_setup/mysql4-upgrade-1.5.9.9-1.6.0.0.php”    - SQLSTATE [HY000]:一般错误:将'./sales_flat_order'重命名为'./#sql2-3af-a7'时错误:1025错误(错误号:152)

如何解决此问题?

4 个答案:

答案 0 :(得分:1)

升级magento是一个非常痛苦的过程。我建议你从旧店到新店进出口数据。

答案 1 :(得分:0)

我刚经历了同样的胃灼热。我发现让页面尝试加载,直到脚本出错或超时,然后再次尝试最终工作。 升级脚本将尝试从上次停止的位置开始。

在此之前,请备份您的站点和数据库。如果它在同一位置不断出现错误,请恢复并重试。

这些提示可能有助于提高更快成功的几率:

  • 将网站置于维护模式(通过添加maintenance.flag文件 在开始之前到根目录。
  • 增加服务器和php超时量(3-5分钟)。
  • 清除您不关心的临时数据库和日志数据库表 (仔细,每个人都有不同的需求)

我尝试了几种不同的方法,这是唯一有效的方法。大概需要10次重新加载(每次等待3分钟的超时)。最后,一切都正确升级。无论您选择何种方法,如果您想保留商店数据,您都必须运行庞大的数据库升级脚本,这些脚本将永远存在。

答案 2 :(得分:0)

从1.4.2更新到最新版时,我遇到了类似的问题。 我在index.php中构建了一个自定义维护脚本,只允许访问我的ip。但是通过shell的更新过程取代了我的index.php,因此每个人都可以访问它。 这就是由多个客户端运行的最终sql脚本导致错误的原因,例如"无法移动表"因为那些已经完成的步骤。

- >总结一下:确保网站只被调用一次,直到升级成功!

答案 3 :(得分:0)

在我看来,迁移magento的最佳方法是将整个数据库导入到拥有新magento的环境中。然后magento将运行所有脚本和更新并保留您的数据。 也许您在升级脚本上发现了一些问题,但解决它们比解决有关模型/ eav的问题的问题更容易解决。

我在从1.4.1迁移到1.8.1时已经成功了。