Problem mit Magento Product Flat Data und Catalog Search Index

9

Wir betreiben einen Magento Shop mit 8k Produkten. Die Kabelindexierung funktioniert nicht. Einige Fehler werfen. Produktflatdatenfehler

%Vor%

Katalogsuchindex

%Vor%

Beide Indizes werden über die Befehlszeile ausgeführt. Ich habe beide Fehler gegoogelt, aber keine passenden Lösungen gefunden.

    
Tsimtsum 11.04.2013, 14:12
quelle

5 Antworten

3

Ich hatte das gleiche Problem vor ein paar Tagen.

1 - Bitte machen Sie eine DB-Sicherung

2 - Deaktivieren Sie die Optionen "Flaches Produkt und Kategorie verwenden" in Magento und wechseln Sie den Index-Modus von den Produkt-Flachdaten auf "Manuelle Aktualisierung";

3 - Gehen Sie jetzt in Ihre DB. lösche die catalog_product_flat_xx Tabelle (n);

4 - Sie müssen den Katalog über SSH neu indizieren. Es sollte so aussehen:

%Vor%

Magento erstellt für jeden Shop neue Tabellen. Ich könnte eine Weile dauern.

Sobald Sie fertig sind, können Sie die Option Flachprodukte aktivieren und prüfen, ob Magento den Reindex selbst ausführen kann.

    
medina 17.04.2013 06:03
quelle
1

Schneiden Sie Product Flat Data ab, und führen Sie dieses Skript erneut aus. Sollte das Problem der Fremdschlüsseleinschränkung sein.

    
oscprofessionals 11.04.2013 18:21
quelle
1

Ich habe diesen Fehler gesehen, als ich manuell versucht habe, Spalten zu ändern, die FK (Relation) zu ihm hatten. Abschneiden flache Indextabellen sollten es verschwinden lassen - versuchen Sie auch, DELETE FROM anstatt TRUNCATE zu verwenden, falls es nicht funktioniert.

Wie viele Attribute werden am Frontend sichtbar gemacht (und zu Flat-Tabellen hinzugefügt)? MySQL hat ein Limit von 64k pro Zeile und es können schlimme Dinge passieren, wenn Sie es kaputt machen (wie beschädigte Tabellen ...)

Der zweite Fehler sieht aus wie ein falsches Cache-Setup (local.xml) oder ein Problem mit den Dateiberechtigungen des var-Ordners.

    
nesh 18.04.2013 13:37
quelle
1

Ich konnte catalog_product_flat index process nicht erneut indizieren. Nach einem Tag und versuchen Sie mehrere Lösungen im Internet. Ich konnte das Problem beheben. Unten sind die Schritte.

  1. Erstellen Sie einen Klon des Magento-Db, der dem Indizierungsproblem gegenübersteht.
  2. Dump die Datenbank in die neu erstellte db.
  3. schneidet die Tabelle catalog_product_flat_1 für einen einzelnen Speicher ab und für mehrere Speicher gibt es mehrere Tabellen catalog_product_flat_* , wobei * die Speicher-ID ist. Hier schneiden Sie alle diese Tabelle ab.
  4. Zeigen Sie die Mangento-Instanz auf die neu erstellte Datenbank und konfigurieren Sie die Datenbank, damit die Site normal funktioniert.
  5. Führen Sie nun den Befehl php document_root/shell/indexer.php --reindex catalog_product_flat aus oder versuchen Sie es erneut von Admin. php document_root/shell/indexer.php --reindexall für die Neuindizierung des gesamten Prozesses.
DepH 09.12.2014 05:25
quelle
-1

Ich hatte das gleiche Problem bei der erneuten Indexierung in der Katalogsuche ... nach 10 Tagen habe ich die Lösung gefunden.

Katalogsuche Indexfehler, den ich bekommen habe:

  

Ausnahme 'PDOException' mit Nachricht 'SQLSTATE [HY000]: Allgemeiner Fehler:   1785 Wenn @@ GLOBAL.ENFORCE_GTID_CONSISTEN CY = 1, aktualisiert auf   Nicht-transaktionale Tabellen können nur in autocommitted durchgeführt werden   Statements oder Single-Statement-Transaktionen, und nie in der gleichen   Anweisung als Aktualisierung von Transaktionstabellen. '

Die Lösung ist:

  1. Drop-Tabelle catalogsearch_fulltext
  2. Erstellen Sie erneut catalogsearch_fulltext table mit der exist-Struktur.
  3. Aktualisieren Sie die Tabelle catalogsearch_query mit der angegebenen Abfrage.

    UPDATE catalogsearch_query SET is_processed = 0

Öffnen Sie dann Ihr SSH und führen Sie den Befehl aus, damit es wieder funktioniert:

%Vor%     
suresh prajapati 22.07.2016 09:08
quelle

Tags und Links