Magento 2 Reindexing - Uno o più indicizzatori non sono validi. Assicurarsi che il processo cron di Magento sia in esecuzione


78

Non sono riuscito a trovare il modo di reindicizzare in azioni di massa su Magento 2.

Sembra che tu debba eseguirlo da cronjob. Esiste un modo alternativo per reindicizzare i dati in magento 2 dal backend o dalla riga di comando, proprio come in Magento 1.x ( php shell/indexer.php -reindexall)?

inserisci qui la descrizione dell'immagine


scusa ma sono nuovo di Magento. Ho installato Magento localmente su XAMPP, sto usando Windows 7 e vorrei chiedere cosa posso fare ?? ricevo lo stesso messaggio,
Alex4842

1
@ Alex4842 stessa cosa qui. Esecuzione di Magento su Win 10. Trovato questo: magento.stackexchange.com/questions/111132/…
Mohammed Joraid

Puoi reindicizzare nel backend tramite questa guida mageplaza.com/kb/how-reindex-magento-2.html
Say Truth

Risposte:


117

per reindicizzare in magento 2, vai alla CLI e quindi alla cartella principale dell'installazione di magento ed esegui il comando seguente:

php bin/magento indexer:reindex



Per coloro che usano mac, possono cambiare la directory in dir_installazione / bin e scrivere questo comando ./magento indexer :: reindex
Harit

2
Dice che puoi accettare in 3 minuti xD
Harit


Ricevo un errore di analisi in /Applications/MAMP/htdocs/Magento-CE-2.1.2-2016-10-11-11-16-47/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php sulla linea 93
Oli Tuck,

22

Esegui questo comando nella CLI

indicizzatore php bin / magento: reindex

e se vuoi reindicizzare solo un indicizzatore, scrivi il seguente comando:

php bin / magento indexer: reindex indexer_name.

dove indexer_namesi trova digitando il comando seguente:

indicizzatore php bin / magento: info


6

Ecco come eseguire le operazioni utilizzando i comandi di indicizzazione della CLI di Magento 2

Entra nel tuo file di comando della CLI Magento disponibile nella directory Magento / bin cd magento_folder / bin ed esegui comamnd direttamente usando magento in terminal o putty.

Ecco come funzionerà per l'indicizzazione in Magento 2

Ottieni l'elenco degli indicizzatori disponibili in Magento 2

indicizzatore php bin / magento: info

Come controllare lo stato dell'indicizzatore

Il seguente comando ti mostrerà lo stato di tutto l'indicizzatore se l'indicizzazione è necessaria o pronta.

php bin / magento indexer: status

Puoi anche controllare lo stato del singolo indicizzatore: diciamo che voglio controllare lo stato di catalog_category_product

indicizzatore php bin / magento: stato catalog_category_product

Come reindicizzare tutta l'indicizzazione disponibile in Magento 2

indicizzatore php bin / magento: reindex

Nel caso in cui si riempia il limite di memoria, provare questo comando

php bin / magento -dmemory_limit = indicizzatore magento 2G: reindex


4

Usa l'interfaccia della riga di comando di Magento. Esegui php bin/magento indexer:reindexdalla directory principale del progetto.


1

Se un indice è in loop, è possibile ripristinare tutto l'indice utilizzando
indexer:reset
quindi utilizzare reindex normale


1

Per reindicizzare dal prompt dei comandi, eseguire sotto il comando:

php bin/magento indexer:reindex

Il comando sopra dovrebbe essere eseguito dalla directory principale di magento


1

Sulla CLI radice di Magento, esegui il comando seguente

php bin/magento indexer:reset

Quindi eseguire il comando seguente

php bin/magento indexer:reindex

0

Soluzione alternativa aggiungere il php bin/magento indexer:reindexcomando su cronjob.

Ho seguito questo e ha funzionato sul mio sistema



0

un. Reindicizzazione da Magento admin * a volte non tutti gli indicizzatori vengono reindicizzati utilizzando admin reindex> controlla anche reindex tramite SSH

  1. Vai a Sistema> Gestione indice e controlla lo stato degli indicizzatori
  2. Seleziona gli elementi contrassegnati come "Reindex richiesto" e vai su Azioni> Aggiorna nei tempi previsti

Ciò attiverà un reindex per gli indicizzatori selezionati.

Importante: a volte non tutti gli indicizzatori vengono reindicizzati utilizzando admin reindex anche se ora e data vengono visualizzati come aggiornati in magento admin. Si consiglia di ricontrollare il processo di reindicizzazione utilizzando il metodo reindex SSH / CLI presentato di seguito.

Modalità Reindex: è possibile impostare gli indicizzatori come "Aggiorna su Salva" e le entità negozio verranno indicizzate durante il salvataggio delle configurazioni dell'amministratore o come "Aggiorna per pianificazione" e gli indicizzatori verranno reindicizzati periodicamente (impostazione predefinita una volta al giorno). Affinché "Update by Schedule" funzioni correttamente, assicurati che i tuoi lavori cron funzionino correttamente sul tuo server. Il tuo partner di hosting o team di sviluppo può aiutarti nella configurazione dei lavori cron.

inserisci qui la descrizione dell'immagine

Fatto!

b. Reindex tramite SSH / CLI (consigliato)

  1. Connettiti alla tua installazione di Magento 2 nella radice del tuo progetto. (di solito in public_html o sotto yourmagentoinstallation.com/html)

  2. Reindicizza tutti gli indicizzatori Magento 2 usando il comando seguente:

php bin/magento indexer:reindex

Riceverai un risultato simile come indicato di seguito:

L'indice di configurazione della griglia di progettazione è stato ricostruito correttamente in 00:00:00

L'indice della griglia del cliente è stato ricostruito correttamente in 00:00:00

L'indice dei prodotti di categoria è stato ricostruito correttamente in 00:00:00

L'indice delle categorie di prodotti è stato ricostruito correttamente in 00:00:00

L'indice dei prezzi dei prodotti è stato ricostruito correttamente in 00:00:01

L'indice EAV del prodotto è stato ricostruito correttamente in 00:00:01

L'indice di ricerca del catalogo è stato ricostruito correttamente in 00:00:01

L'indice azionario è stato ricostruito con successo in 00:00:00

Regola del catalogo L'indice del prodotto è stato ricostruito correttamente in 00:00:01

L'indice delle regole di prodotto del catalogo è stato ricostruito correttamente in 00:00:00

inserisci qui la descrizione dell'immagine

  1. Controlla lo stato degli indicizzatori e identifica gli indicizzatori che devono ancora essere reindicizzati individualmente, a volte il reindex generale non funziona per tutti gli indicizzatori

    php bin/magento indexer:status

Riceverai un risultato simile come indicato di seguito:

Griglia di configurazione: pronta

Griglia del cliente: pronta

Categoria Prodotti: Pronto

Categorie di prodotti: Pronto

Prezzo del prodotto: Pronto

EAV del prodotto: pronto

Ricerca nel catalogo: pronta

Stock: Pronto

Prodotto delle regole del catalogo: Reindex richiesto

Catalogo Regola del prodotto: Pronto

inserisci qui la descrizione dell'immagine

  1. Mostra l'elenco degli indicizzatori e l'id indicizzatore corrispondente che devono essere utilizzati per il reindicizzazione individuale.

    php bin/magento indexer:info

Riceverai un risultato simile come indicato di seguito:

design_config_grid Griglia di configurazione del design

customer_grid Griglia del cliente

catalog_category_product Categoria Prodotti

catalog_product_category Categorie di prodotti

catalog_product_price Prezzo del prodotto

catalog_product_attribute EAV del prodotto

catalogsearch_fulltext Ricerca nel catalogo

cataloginventory_stock Stock

catalogrule_rule Catalogo Regola Prodotto

catalogrule_product Regola del prodotto catalogo

inserisci qui la descrizione dell'immagine

  1. Reindicizza ogni indicizzatore con lo stato "Reindex richiesto" utilizzando i comandi seguenti

    php bin/magento indexer:reindex [catalog_category_flat]

Esempio: php bin/magento indexer:reindex catalogrule_rule

php bin/magento indexer:reindex design_config_grid customer_grid
php bin/magento indexer:reindex catalog_category_product
php bin/magento indexer:reindex catalog_product_category
php bin/magento indexer:reindex catalog_product_price
php bin/magento indexer:reindex catalog_product_attribute
php bin/magento indexer:reindex catalogsearch_fulltext
php bin/magento indexer:reindex cataloginventory_stock
php bin/magento indexer:reindex catalogrule_rule
php bin/magento indexer:reindex catalogrule_product
  1. Controlla di nuovo lo stato degli indicizzatori usando il comando dal passaggio 2, ora tutti gli indicizzatori dovrebbero essere "Pronti".

Fatto!


0

A volte per semplificare, potresti voler reindicizzare direttamente dall'amministratore senza coinvolgere cron (specialmente se non hai impostato i tuoi lavori cron e il sito è ancora in fase di sviluppo). In tali casi, è possibile utilizzare l'estensione gratuita Admin Reindex [M2] che consente di reindicizzare dall'amministratore.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.