【问题标题】:Magento 1.6.2 can't reindex product pricesMagento 1.6.2 无法重新索引产品价格
【发布时间】:2012-03-31 13:01:54
【问题描述】:

亲爱的社区,我需要你的帮助。

在一个看起来很容易解决的问题上花费大量时间。无法重新索引定价。产品视图页面上的价格会发生变化,但类别视图上不会发生变化。

该错误仅影响可配置产品的类别视图价格。

我做到了:

  • 使用 magento-cleanup.php
  • 删除所有店铺
  • 删除所有产品
  • 重复数据库(php myadmin)

试图找到数据库修复工具,但它似乎不再可以从 magento 站点获得???

异常日志下方:

2012-03-31T12:02:12+00:00 调试 (7):异常消息:SQLSTATE[21S01]:插入值列表与列列表不匹配:1136 列计数与第 1 行的值计数不匹配

追踪:

#0 C:\xampp\htdocs\lib\Varien\Db\Statement\Pdo\Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array)
#1 C:\xampp\htdocs\lib\Zend\Db\Statement.php(300): Varien_Db_Statement_Pdo_Mysql->_execute(Array)


#2 C:\xampp\htdocs\lib\Zend\Db\Adapter\Abstract.php(479): Zend_Db_Statement->execute(Array)


#3 C:\xampp\htdocs\lib\Zend\Db\Adapter\Pdo\Abstract.php(238): Zend_Db_Adapter_Abstract->query('INSERT INTO `ca...', Array)

#4 C:\xampp\htdocs\lib\Varien\Db\Adapter\Pdo\Mysql.php(389): Zend_Db_Adapter_Pdo_Abstract->query('INSERT INTO `ca...', Array)


#5 C:\xampp\htdocs\app\code\core\Mage\Catalog\Model\Resource\Product\Indexer\Price\Default.php(278): Varien_Db_Adapter_Pdo_Mysql->query('INSERT INTO `ca...')


#6 C:\xampp\htdocs\app\code\core\Mage\Downloadable\Model\Resource\Indexer\Price.php(47): Mage_Catalog_Model_Resource_Product_Indexer_Price_Default->_prepareFinalPriceData()


#7 C:\xampp\htdocs\app\code\core\Mage\Catalog\Model\Resource\Product\Indexer\Price.php(381): Mage_Downloadable_Model_Resource_Indexer_Price->reindexAll()


#8 C:\xampp\htdocs\app\code\core\Mage\Index\Model\Indexer\Abstract.php(143): Mage_Catalog_Model_Resource_Product_Indexer_Price->reindexAll()


#9 C:\xampp\htdocs\app\code\core\Mage\Index\Model\Process.php(207): Mage_Index_Model_Indexer_Abstract->reindexAll()
#10 C:\xampp\htdocs\app\code\core\Mage\Index\Model\Process.php(253): Mage_Index_Model_Process->reindexAll()


#11 C:\xampp\htdocs\app\code\core\Mage\Index\controllers\Adminhtml\ProcessController.php(124): Mage_Index_Model_Process->reindexEverything()


#12 C:\xampp\htdocs\app\code\core\Mage\Core\Controller\Varien\Action.php(420): Mage_Index_Adminhtml_ProcessController->reindexProcessAction()


#13 C:\xampp\htdocs\app\code\core\Mage\Core\Controller\Varien\Router\Standard.php(250): Mage_Core_Controller_Varien_Action->dispatch('reindexProcess')


#14 C:\xampp\htdocs\app\code\core\Mage\Core\Controller\Varien\Front.php(176): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))

#15 C:\xampp\htdocs\app\code\core\Mage\Core\Model\App.php(349): Mage_Core_Controller_Varien_Front->dispatch()


#16 C:\xampp\htdocs\app\Mage.php(640): Mage_Core_Model_App->run(Array)


#17 C:\xampp\htdocs\index.php(83): Mage::run('', 'store')


#18 {main}

有人可以解释一下吗?

谢谢!

【问题讨论】:

  • db修复工具可以在这里下载:magentocommerce.ro/download
  • 从 CLI 尝试 php /your-magento-path/shell/indexer.php info,它返回什么?

标签: magento indexing


【解决方案1】:

问题对我来说很棘手,我昨天尝试了 Magento 1.7,升级后添加了一些额外的列(尤其是group_price)。由于几个错误,我切换到 1.6.2,但列仍然在这里。所以我不得不在数据库中手动删除创建的列。

希望这会有所帮助!

【讨论】:

  • 嘿,谢谢你的回答!花了我一个周末从来没有能够解决......刚刚恢复了一个旧的备份并承担了损失......
【解决方案2】:

我使用传统(有效)的方式将几个 Magento CE (1.4) 升级到 Magento EE (1.11)。但我发现在重新索引价格时有一个重要问题阻碍了 Magento 这样做。

阅读 Magento Boards 上的这篇文章后,我发现问题(就我而言)与 catalog_product_entity_tier_price 表的错误有关,其中一些条目与不再存在的产品相关。这是实际错误,在尝试重新索引产品价格时,Magento 会抛出以下消息:

There was a problem with reindexing process.

如何解决

所以你想解决这个问题。您必须删除 catalog_product_entity_tier_price 表中与不再存在的产品相关的所有条目。您可以手动完成,也可以使用我创建的以下脚本。它真的很容易使用。

[download from here][1]

在该文件中,您会发现:

The script: clean_tier_prices.php
A library to connect in a really easy way to the db

按照以下步骤操作:

Make a copy of your database (just in case)
Uncompress the zip file in your magento base directory
Edit the lib/db.php file and put there your connection settings (db user, user pass and db)
Open the browser and go to http://yourmagentopath.com/clean_tier_prices.php
You’ll see wich references have been deleted from the catalog_product_entity_tier_price table
Try reindexing again in your Magento backoffice

重要提示:您使用此脚本需要您自担风险。在应用之前制作数据库的副本。如果你改进了这一点,请与我和世界其他地方分享! download from here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多