【问题标题】:Magento Reindex Product Flat errorMagento 重新索引产品平面错误
【发布时间】:2012-10-10 07:45:25
【问题描述】:

上周以来,产品价格指数被打破。所有其他重新索引器都在工作。

例外:

Product Flat Data index process unknown error:
exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 1005 Can't create table 'magento.#sql-37aa_425' (errno: 121)' in /var/www/vhosts/httpdocs/lib/Zend/Db/Statement/Pdo.php:228
Stack trace:
#0 /var/www/vhosts/httpdocs/lib/Zend/Db/Statement/Pdo.php(228): PDOStatement->execute(Array)
#1 /var/www/vhosts/httpdocs/lib/Varien/Db/Statement/Pdo/Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array)
#2 /var/www/vhosts/httpdocs/lib/Zend/Db/Statement.php(300): Varien_Db_Statement_Pdo_Mysql->_execute(Array)
#3 /var/www/vhosts/httpdocs/lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array)
#4 /var/www/vhosts/httpdocs/lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('ALTER TABLE `ca...', Array)
#5 /var/www/vhosts/httpdocs/lib/Varien/Db/Adapter/Pdo/Mysql.php(389): Zend_Db_Adapter_Pdo_Abstract->query('ALTER TABLE `ca...', Array)
#6 /var/www/vhosts/httpdocs/lib/Varien/Db/Adapter/Pdo/Mysql.php(327): Varien_Db_Adapter_Pdo_Mysql->query('ALTER TABLE `ca...')
#7 /var/www/vhosts/httpdocs/lib/Varien/Db/Adapter/Pdo/Mysql.php(2548): Varien_Db_Adapter_Pdo_Mysql->raw_query('ALTER TABLE `ca...')
#8 /var/www/vhosts/httpdocs/app/code/core/Mage/Catalog/Model/Resource/Product/Flat/Indexer.php(806): Varien_Db_Adapter_Pdo_Mysql->addForeignKey('FK_CAT_PRD_FLAT...', 'catalog_product...', 'entity_id', 'catalog_product...', 'entity_id', 'CASCADE', 'CASCADE')
#9 /var/www/vhosts/httpdocs/app/code/core/Mage/Catalog/Model/Resource/Product/Flat/Indexer.php(125): Mage_Catalog_Model_Resource_Product_Flat_Indexer->prepareFlatTable(2)
#10 /var/www/vhosts/httpdocs/app/code/core/Mage/Catalog/Model/Resource/Product/Flat/Indexer.php(115): Mage_Catalog_Model_Resource_Product_Flat_Indexer->rebuild('2')
#11 /var/www/vhosts/httpdocs/app/code/core/Mage/Catalog/Model/Product/Flat/Indexer.php(73): Mage_Catalog_Model_Resource_Product_Flat_Indexer->rebuild(NULL)
#12 /var/www/vhosts/httpdocs/app/code/core/Mage/Catalog/Model/Product/Indexer/Flat.php(303): Mage_Catalog_Model_Product_Flat_Indexer->rebuild()
#13 /var/www/vhosts/httpdocs/app/code/core/Mage/Index/Model/Process.php(166): Mage_Catalog_Model_Product_Indexer_Flat->reindexAll()
#14 /var/www/vhosts/httpdocs/app/code/core/Mage/Index/Model/Process.php(194): Mage_Index_Model_Process->reindexAll()
#15 /var/www/vhosts/httpdocs/shell/indexer.php(158): Mage_Index_Model_Process->reindexEverything()
#16 /var/www/vhosts/httpdocs/shell/indexer.php(198): Mage_Shell_Compiler->run()
#17 {main}

如果在谷歌上搜索了很多关于这个主题的信息。我做了很多尝试,比如更改表格或删除产品平面表格。似乎没有任何效果。

我还尝试了 magento 数据库修复工具。同样的例外。

谁能帮我解决这个问题?

谢谢

【问题讨论】:

  • 你检查过连接用户的 MySQL 权限吗?即,确保app/etc/local.xml 中的用户可以在 MySQL 中创建表并更改它们。
  • 您好,感谢您的回答。奇怪的事情发生了。我不得不把我的商店搬到一个新的服务器上。转储整个数据库并移至新服务器。成功后,我尝试了很长时间重新索引产品平面,现在它可以工作了,o.o 我不知道发生了什么,但它可以工作。 :)))

标签: magento reindex


【解决方案1】:

上次我遇到重新索引问题时,我将此添加到我的 mysql 配置文件 (/etc/my.cnf)

key_buffer = 512M
max_allowed_packet = 64M
table_cache = 512
sort_buffer_size = 4m
read_buffer_size = 4m
read_rnd_buffer_size = 2m
myisam_sort_buffer_size = 64m
tmp_table_size = 128m
query_cache_size = 96m
query_cache_type = 1
thread_cache_size = 8
max_connections = 400
wait_timeout = 300

您可能还需要删除 magento/var/locks/ 中的锁定文件

阅读更多@http://www.magentocommerce.com/boards/viewthread/36225/

【讨论】:

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