Как переиндексировать Magento 1.x с помощью командной строки


17

Как я могу переиндексировать magento с помощью командной строки. Просьба предоставить шаги для того же.


2
Это лучший результат поиска Google, но ответ для Magento 1.x. Если вам нужен ответ для Magento 2.x, см. Magento.stackexchange.com/questions/90510/…
Скотт Уилсон,

Ответы:


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 - это тип индекса, который вы хотите перестроить. Вы можете использовать следующие аргументы для разных типов индексов:

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

Для всех переиндексаций: php indexer.php --reindexall

Фоновый процесс переиндексации Иногда вам может потребоваться запустить этот процесс в фоновом режиме, чтобы вы могли выключить компьютер или просто выпить пару бутылок пива. В этом случае вы можете использовать инструмент командной строки, который называется nohup. Это позволяет вам запускать практически любую команду CLI в фоновом режиме независимо от текущего сеанса. Если вы хотите переиндексировать что-то в фоновом режиме, ваша команда должна выглядеть так:

nohup php indexer.php --reindex catalog_product_price &

Для получения дополнительной информации обратитесь по этой ссылке


19

Ты можешь использовать

Перейдите в папку оболочки и запустите этот 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, почему вы заставляете его удалить ответ? Любой может поделиться ответом, который они думают.
Теджа Бхагаван Коллепара


1

Используйте эту команду из корневой папки вашего проекта, чтобы запустить все индексы:

php shell/indexer.php --reindexall

Вы также можете запустить определенный индекс сущности, передав в качестве аргумента команду:

php shell/indexer.php --reindex <indexer>
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.