Reindeksowanie Magento 2 - jeden lub więcej indeksatorów jest niepoprawnych. Upewnij się, że twoje zadanie Magento cron jest uruchomione


78

Nie mogłem znaleźć sposobu na reindeksowanie w masowych akcjach na Magento 2.

Wygląda na to, że musisz uruchomić go z cronjob. Czy istnieje alternatywny sposób ponownego indeksowania danych w Magento 2 z backendu lub wiersza poleceń, tak jak w Magento 1.x ( php shell/indexer.php -reindexall)?

wprowadź opis zdjęcia tutaj


przepraszam ale jestem nowy w Magento. Zainstalowałem Magento lokalnie na XAMPP, używam Windows 7 i chciałbym zapytać, co mogę zrobić? dostaję tę samą wiadomość,
Alex4842,

1
@ Alex4842 to samo tutaj. Uruchamianie Magento w Win 10. Znaleziono: magento.stackexchange.com/questions/111132/…
Mohammed Joraid

Możesz ponownieindeksować backend za pomocą tego przewodnika mageplaza.com/kb/how-reindex-magento-2.html
Powiedz prawdę

Odpowiedzi:


117

aby ponownieindeksować w Magento 2, przejdź do CLI, a następnie do folderu głównego instalacji Magento i uruchom poniższe polecenie:

php bin/magento indexer:reindex



Dla tych, którzy używają Maca, mogą zmienić katalog na katalog_instalacyjny / bin i napisać to polecenie ./magento indexer :: reindex
Harit

2
Mówi, że możesz zaakceptować w 3 minuty xD
Harit


Pojawia się błąd analizy w /Applications/MAMP/htdocs/Magento-CE-2.1.2-2016-10-11-11-16-47/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php w linii 93
Oli Tuck

22

Uruchom to polecenie w interfejsie CLI

php bin / magento indexer: reindex

a jeśli chcesz ponownie indeksować tylko jednego indeksatora, napisz następującą komendę:

php bin / magento indexer: reindex nazwa_indeksu.

gdzie indexer_namemożna znaleźć, wpisując następujące polecenie:

php bin / magento indexer: informacje


6

Oto, w jaki sposób możesz załatwić sprawę za pomocą poleceń indeksujących CLI Magento 2

Wejdź do pliku komend Magento CLI dostępnego w katalogu Magento / bin cd magento_folder / bin i uruchom swoją komendę bezpośrednio za pomocą magento w terminalu lub kitie.

Oto jak to będzie działać w przypadku indeksowania w Magento 2

Pobierz listę dostępnych indeksatorów w Magento 2

php bin / magento indexer: informacje

Jak sprawdzić status indeksatora

Poniższe polecenie spowoduje wyświetlenie statusu wszystkich indeksatorów, niezależnie od tego, czy indeksowanie jest wymagane, czy gotowe.

php bin / magento indexer: status

Możesz także sprawdzić status poszczególnych indeksatorów: powiedzmy, że chcę sprawdzić status katalogu_kategorii_produktu

php bin / magento indexer: status katalog_kategorii_kategorii

Jak reindeksować wszystkie dostępne indeksowania w Magento 2

php bin / magento indexer: reindex

Jeśli wypełnisz limit pamięci, wypróbuj to polecenie

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



1

Jeśli któryś z indeksów zapętla się Możesz zresetować cały indeks za pomocą,
indexer:reset
a następnie użyj normalnego reindeksu


1

Aby Reindex z wiersza polecenia uruchom poniżej polecenia:

php bin/magento indexer:reindex

Powyższe polecenie należy uruchomić z katalogu głównego magento


1

W głównym interfejsie CLI Magento uruchom poniższe polecenie

php bin/magento indexer:reset

Następnie uruchom poniższe polecenie

php bin/magento indexer:reindex

0

Alternatywne rozwiązanie dodaj php bin/magento indexer:reindexpolecenie w cronjob.

Śledziłem to i działało w moim systemie



0

za. Reindex od Magento admin * czasami nie wszyscy indeksatorzy są ponownie indeksowani przy użyciu admin reindex> sprawdź także reindex przez SSH

  1. Przejdź do System> Zarządzanie indeksami i sprawdź status indeksatorów
  2. Wybierz elementy oznaczone jako „Wymagane ponowne indeksowanie” i przejdź do Działania> Aktualizuj zgodnie z harmonogramem

To uruchomi reindeks dla wybranych indeksatorów.

Ważne: Czasami nie wszyscy indeksatorzy są reindeksowani przy użyciu admin reindex, nawet jeśli czas i data są wyświetlane jako zaktualizowane w Magento admin. Zalecamy dokładne sprawdzenie procesu reindeksu za pomocą metody reindeksu SSH / CLI przedstawionej poniżej.

Tryb Reindex: Możesz ustawić swoje indeksatory jako „Aktualizuj przy zapisywaniu”, a jednostki sklepu zostaną zindeksowane podczas zapisywania konfiguracji administratora lub jako „Aktualizuj zgodnie z harmonogramem”, a indeksatory będą ponownie indeksowane ponownie (domyślnie raz / dzień). Aby „Aktualizacja według harmonogramu” działała poprawnie, upewnij się, że zadania cron działają poprawnie na serwerze. Twój partner hostingowy lub zespół programistów może pomóc w konfiguracji zadań cron.

wprowadź opis zdjęcia tutaj

Gotowy!

b. Reindex przez SSH / CLI (zalecane)

  1. Połącz się z instalacją Magento 2 w katalogu głównym projektu. (zwykle w public_html lub w yourmagentoinstallation.com/html)

  2. Ponownie indeksuj wszystkie indeksatory Magento 2 za pomocą poniższego polecenia:

php bin/magento indexer:reindex

Otrzymasz podobny wynik, jak przedstawiono poniżej:

Indeks konfiguracji siatki konfiguracji został pomyślnie przebudowany o godzinie 00:00:00

Indeks sieci klienta został pomyślnie odbudowany o godzinie 00:00:00

Indeks kategorii produktów został pomyślnie przebudowany o godzinie 00:00:00

Indeks kategorii produktów został pomyślnie przebudowany w 00:00:00

Indeks cen produktów został pomyślnie odbudowany w 00:00:01

Indeks produktu EAV został pomyślnie odbudowany w 00:00:01

Indeks wyszukiwania katalogu został pomyślnie odbudowany w 00:00:01

Indeks giełdowy został pomyślnie odbudowany w 00:00:00

Reguła katalogu Indeks produktu został pomyślnie odbudowany w 00:00:01

Indeks reguł katalogowych produktu został pomyślnie odbudowany o godzinie 00:00:00

wprowadź opis zdjęcia tutaj

  1. Sprawdź status indeksatorów i zidentyfikuj indeksatorów, które nadal wymagają indywidualnej reindeksacji, czasem ogólny reindex nie działa dla wszystkich indeksatorów

    php bin/magento indexer:status

Otrzymasz podobny wynik, jak przedstawiono poniżej:

Siatka konfiguracji projektu: gotowa

Siatka klienta: gotowa

Produkty kategorii: Gotowe

Kategorie produktów: Gotowe

Cena produktu: gotowy

Produkt EAV: gotowy

Wyszukiwanie w katalogu: gotowe

Zapas: gotowy

Reguła katalogu Produkt: wymagany Reindex

Katalogowa reguła produktu: Gotowe

wprowadź opis zdjęcia tutaj

  1. Pokaż listę indeksujących i odpowiadające im identyfikatory indeksujące, których należy użyć do indywidualnego ponownego indeksowania.

    php bin/magento indexer:info

Otrzymasz podobny wynik, jak przedstawiono poniżej:

design_config_grid Design Config Grid

customer_grid Siatka klienta

katalog_kategoria_produkt Kategoria Produkty

katalog_produktu_kategoria Kategorie produktów

katalog_produktu_cena Cena produktu

katalog_produktu_atrybut Produkt EAV

catalogsearch_fulltext Wyszukiwanie w katalogu

cataloginventory_stock Magazyn

catalogrule_rule Katalog Reguła Produkt

catalogrule_product Katalog Reguła dotycząca produktu

wprowadź opis zdjęcia tutaj

  1. Ponownie indeksuj każdy indeksator o statusie „Wymagany kod Reindex”, używając poniższych poleceń

    php bin/magento indexer:reindex [catalog_category_flat]

Przykład: 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. Sprawdź ponownie status indeksatorów za pomocą polecenia z kroku 2, teraz wszystkie indeksatory powinny być „gotowe”.

Gotowy!


0

Czasami, aby było to łatwiejsze, możesz chcieć ponownie zaindeksować bezpośrednio od administratora bez angażowania crona (szczególnie jeśli nie skonfigurowałeś swoich zadań crona, a strona jest wciąż w fazie rozwoju). W takich przypadkach możesz użyć bezpłatnego rozszerzenia Admin Reindex [M2], które pozwala na ponowneindeksowanie od administratora.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.