如何通过使用命令行重新索引Magento 1.x


Answers:


41
step 1 : cd [MAGENTO_ROOT]/shell/

您应将[MAGENTO_ROOT]替换为您自己的Magento根文件夹的绝对路径。例如,/ home / Thief / public_html /然后列出所有文件以查看此处的内容。只需输入简单的命令:

step 2 : ls -l

如果您可以找到“ indexer.php”之类的东西,那就是我们所需要的,我们可以继续。要查看所有索引的状态,可以执行以下命令

php indexer.php --status

step 3 : php indexer.php --reindex catalog_product_price 

这里catalog_product_price是要重建的索引类型。您可以将next参数用于不同类型的索引:

catalog_product_attribute Product Attributes
catalog_product_price Product Prices
catalog_url Catalog Url Rewrites
catalog_product_flat Product Flat Data
catalog_category_flat Category Flat Data
catalog_category_product Category Products
catalogsearch_fulltext Catalog Search Index
cataloginventory_stock Stock status

对于所有reindexall: php indexer.php --reindexall

后台重新索引过程有时您可能希望在后台运行此过程,以便关闭计算机或喝几杯啤酒。在这种情况下,您可以使用称为“ nohup”的命令行工具。它允许您独立于当前会话在后台运行几乎所有CLI命令。如果要在后台重新索引某些内容,则命令应如下所示:

nohup php indexer.php --reindex catalog_product_price &

有关更多信息,请参考此链接


19

您可以使用

转到shell文件夹并运行此cmd

php indexer.php --reindexall

对于单独

php yourmagentofolder/shell/indexer.php -reindex catalog_product_attribute
php yourmagentofolder/shell/indexer.php -reindex catalogsearch_fulltext
php yourmagentofolder/shell/indexer.php -reindex catalog_category_flat
php yourmagentofolder/shell/indexer.php -reindex cataloginventory_stock
php yourmagentofolder/shell/indexer.php -reindex catalog_category_product
php yourmagentofolder/shell/indexer.php -reindex catalog_product_price
php yourmagentofolder/shell/indexer.php -reindex tag_summary
php yourmagentofolder/shell/indexer.php -reindex catalog_url

9
@vaibhavahalpara,为什么要强迫他删除答案?任何人都可以分享他们认为的答案。
Teja的至尊Kollepara


1

从项目的根文件夹使用此命令来运行所有索引:

php shell/indexer.php --reindexall

您还可以通过在命令中将参数作为以下参数传递来运行特定的实体索引:

php shell/indexer.php --reindex <indexer>
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.