我最近一直在问几个问题,想知道如何更改我们 Magento 商店的产品代码。
答案是在 phpmyadmin 中运行这个命令:
UPDATE `catalog_product_entity` SET `sku` = RIGHT(CONCAT('00000000', sku), 8)
它完美地工作,改变了我们所有的产品代码:
63
3433
432
42342343
到:
00000063
00003433
00000432
42342343
问题是;每次我运行该命令时,它都会正确更改产品代码 - 但所有产品随后都是 404'ing。然后我刷新了索引,发现它们被锁定了。我收到以下错误:
Cannot initialize the indexer process.
所以我通过 SSH 运行了以下命令:
rm -rf downloader/pearlib/cache/*
rm -rf downloader/pearlib/download/*
rm -rf var/cache/*
rm -rf var/session/*
rm -rf var/report/*
rm -rf var/tmp/*
rm -rf var/locks/*
但索引进程仍然无法运行。我现在已经完全搞砸了数据库,正在等待支持技术人员尝试解决问题。我可能会从运行 SQL 命令之前的备份中恢复数据库。
我正在尝试找出如何在不弄乱 Magento (1.5) 锁等的情况下运行此 SQL 命令,以便产品不会出现 404。
最佳答案
好吧,答案很简单。
- 禁用所有缓存选项
- 重新索引索引。
- 运行 SQL 命令。
- 重新索引索引。
- 刷新然后重新启用缓存
希望这对以后的其他人有帮助!
关于mysql - 在实时 Magento 商店上运行数据库更新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7293305/