2011-09-03 38 views
1

最近我一直在問幾個問題,以瞭解如何更改我們的Magento商店的產品代碼。在Magento商店上運行數據庫更新?

答案是phpmyadmin的內運行此命令:

UPDATE `catalog_product_entity` SET `sku` = RIGHT(CONCAT('00000000', sku), 8) 

它的工作完美,改變我們所有的產品代碼來自:

63 
3433 
432 
42342343 

到:

00000063 
00003433 
00000432 
42342343 

的問題是;每次運行該命令時,它都會正確更改產品代碼 - 但所有產品都是404'。然後我刷新了索引並發現鎖定了。我得到了以下錯誤:

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的運行SQL命令(1.5)鎖等向上,以便在產品沒有404

回答

0

好了,答案很簡單。

  1. 禁用所有高速緩存選項
  2. 重建索引的索引。
  3. 運行SQL命令。
  4. 重新索引指數。
  5. 刷新然後重新啓用緩存

希望這可以幫助其他人在未來!