Общая ошибка: 1005 Не удается создать таблицу "имя базы данных.категория каталога плоский магазин 1"


Я пытаюсь переиндексировать плоские данные категории через ssh с помощью команды php indexer.php --reindex catalog_category_flat, но я получаю ошибку, как показано ниже. Я перепробовал все решения, опубликованные на форуме, но не смог решить проблему. Можете ли вы заглянуть в журнал ошибок и сообщить мне, есть ли какой-либо способ устранить проблему?

[cpanelusername@server shell]$ php indexer.php --reindex catalog_category_flat
Category Flat Data index process unknown error:
exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 1005 Can't create table 'cpanelusername_magento.catalog_category_flat_store_1' (errno: -1)' in /home/cpanelusername/public_html/catalog/lib/Zend/Db/Statement/Pdo.php:228
Stack trace:
#0 /home/cpanelusername/public_html/catalog/lib/Zend/Db/Statement/Pdo.php(228): PDOStatement->execute(Array)
#1 /home/cpanelusername/public_html/catalog/lib/Varien/Db/Statement/Pdo/Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array)
#2 /home/cpanelusername/public_html/catalog/lib/Zend/Db/Statement.php(300): Varien_Db_Statement_Pdo_Mysql->_execute(Array)
#3 /home/cpanelusername/public_html/catalog/lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array)
#4 /home/cpanelusername/public_html/catalog/lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('CREATE TABLE `c...', Array)
#5 /home/cpanelusername/public_html/catalog/lib/Varien/Db/Adapter/Pdo/Mysql.php(419): Zend_Db_Adapter_Pdo_Abstract->query('CREATE TABLE `c...', Array)
#6 /home/cpanelusername/public_html/catalog/lib/Varien/Db/Adapter/Pdo/Mysql.php(2039): Varien_Db_Adapter_Pdo_Mysql->query('CREATE TABLE `c...')
#7 /home/cpanelusername/public_html/catalog/app/code/core/Mage/Catalog/Model/Resource/Category/Flat.php(604): Varien_Db_Adapter_Pdo_Mysql->createTable(Object(Varien_Db_Ddl_Table))
#8 /home/cpanelusername/public_html/catalog/app/code/core/Mage/Catalog/Model/Resource/Category/Flat.php(1418): Mage_Catalog_Model_Resource_Category_Flat->_createTable('1')
#9 /home/cpanelusername/public_html/catalog/app/code/core/Mage/Catalog/Model/Resource/Category/Flat.php(1431): Mage_Catalog_Model_Resource_Category_Flat->_createTables()
#10 /home/cpanelusername/public_html/catalog/app/code/core/Mage/Catalog/Model/Category/Indexer/Flat.php(246): Mage_Catalog_Model_Resource_Category_Flat->reindexAll()
#11 /home/cpanelusername/public_html/catalog/app/code/core/Mage/Index/Model/Process.php(209): Mage_Catalog_Model_Category_Indexer_Flat->reindexAll()
#12 /home/cpanelusername/public_html/catalog/app/code/core/Mage/Index/Model/Process.php(255): Mage_Index_Model_Process->reindexAll()
#13 /home/cpanelusername/public_html/catalog/shell/indexer.php(158): Mage_Index_Model_Process->reindexEverything()
#14 /home/cpanelusername/public_html/catalog/shell/indexer.php(198): Mage_Shell_Compiler->run()
#15 {main}

У меня нет никакой таблицы БД, называемой cpanelusername_magento.catalog_category_flat_store_1

Author: Kevin S, 2014-04-14

2 answers

У меня была та же проблема, и я нашел решение.

Таблицы catalog_category_entity и core_store были MyISAM вместо InnoDB.

Проверьте эти две таблицы в своей базе данных и, если они являются MyISAM вместо InnoDB, выполните следующие инструкции SQL:

ALTER TABLE catalog_category_entity ENGINE=INNODB;
ALTER TABLE core_store ENGINE=INNODB;
 3
Author: adadeacon, 2014-04-29 15:46:40

Моя проблема заключалась в чем-то другом, что нигде не публиковалось. Я решил проблему, экспортировав базу данных и импортировав ее в новое имя базы данных.

 1
Author: Kevin S, 2014-05-04 09:54:05