Magento - 批量更新产品类别时,MySQL重CPU使用率失败

时间:2017-05-05 20:11:18

标签: mysql apache magento lamp

我在一台仍处于开发模式的专用服务器上运行Magento 1.9.3和140,000种产品。

当我尝试批量更改产品类别(目录 - >管理类别 - >类别产品)时,我会收到innodb超时错误。当我将时间增加到四个小时时,工作永远不会结束。当我检查进程时,MySQL将使用它来使用所有CPU时间然后超时。我可以单独更新产品的产品类别,但我有大约15,000个要做,所以这不起作用。

我尝试了以下内容:

  • Magento数据库修复工具(未发现任何错误)
  • 截断日志文件(这清除了数据库中的700MB并提高了性能,但无法解决此问题。)
  • 在数据库上运行mysqlcheck(未显示任何错误)
  • 将SQL数据库从服务器传输到我的个人计算机并复制错误,证明它不是我服务器的问题。该服务器是一台高端机器,具有大量RAM并且使用SSD作为数据库。
  • 测试了旧数据库备份的问题。如果我回去三个月,我就能解决这个问题。

如果我恢复三个月的备份,我可能会在工作的一天内加快速度,但问题是我不知道导致问题的原因或是否会重新出现。由于它已经在已经为Magento和大型数据库优化的硬件和软件的服务器上造成如此高的CPU使用率,我认为在某处存在无限循环。

我有一个专门的Magento开发商店正在研究这个,但它完全停止了我可以用该网站做的一切。在我确定我可能发现了一个错误之前,有人可以提出任何建议吗?

1 个答案:

答案 0 :(得分:1)

解决方案是您必须从 system->更改索引管理的模式索引管理并从保存更新将索引模式更改为手动更新并提交。 这有助于减少更新类别产品的时间。