From time to time, you might find the need to re-index Magento via the command line. This could be for a whole host of reasons, for example, if the indexer is timing out or not finishing through the web interface.
Magento includes an indexing script and you can find it in the shell folder.
From here, you have a number of commands at your disposal.
Checking for the status of all indexes
Code:
php indexer.php --status
Should give you output like this:
Code:
Product Attributes: Pending
Product Prices: Pending
Stock Status: Pending
Tag Aggregation Data: Pending
Default Values: Pending
Catalog URL Rewrites: Pending
Product Flat Data: Require Reindex
Category Flat Data: Pending
Category Products: Pending
Catalog Search Index: Pending
Re-indexing a single index
Each index has its own index key that you can use to reference it when asking Magento to re-index. To get these keys, you can use the following command:
Code:
php indexer.php --info
Giving you:
Code:
catalog_product_attribute Product Attributes
catalog_product_price Product Prices
tag_summary Tag Aggregation Data
mana_db_replicator Default Values
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
To reindex a single index, run the following command.
Code:
php indexer.php --reindex [Index Option Code]
This can be comma delimited for multiple indices:
Code:
php indexer.php --reindex catalog_product_price,catalog_url,catalog_product_flat
Re-index all indices
The following code will loop through each index and re-index it.
Code:
php indexer.php --reindexall
View more threads in the same category:
Bookmarks