Shopware Serverumzug: Problem beim Datenbankimport (ALTER TABLE)

Hallo Community,

ich habe denn Fall schon x Mal gehabt und nun wende ich mich an euch. Immer wenn ich einen Shopware Shop auf einen anderen Server umziehe, graut es mir bereits beim Gedanken. Denn der Datenbankimport klappt so gut wie nie. MySQL gibt beim Importieren Syntax- und Primary-Key-Errors aus. Oft habe ich es gelöt, indem ich die Datei in ein paar Teile gesplittet habe und dann über das SQL-Textfenster importiert habe. Wenn ich allerdings zu den letzten Anweisungen komme (ALTER TABLE), geht es komplett nicht weiter. Fehlermeldung: #1068 - Mehrere Primärschlüssel (PRIMARY KEY) definiert

Ich kenne mich eigentlich ziemlich gut mit MySQL aus, aber dieses Problem konnte ich noch nie vernpnftig lösen. Habt ihr auch Erfahrungen damit gemacht? Wie bekomme ich die SQL-Datei vernünftig importiert - ohne Fehler?

 

Danke vorab!

Du musst die Foreign-Key-Checks vor dem Import deaktivieren, dann gibt es auch keine Probleme.

1 „Gefällt mir“

Danke für den Hinweis. Den habe ich auch schon mal gefunden gehabt und auch angewendet. Gerade eben auch. Ich gehe wie folgt vor:

  • phpMyAdmin öffnen
  • „SET FOREIGN_KEY_CHECKS=0;“ im SQL-Dialogfenter einfügen und ausführen
  • Import per Datei-Upload starten
  • nach 125 importierten Tabellen foglende Fehlermeldung:

MySQL meldet: 

#1064 - Fehler in der SQL-Syntax. Bitte die korrekte Syntax im Handbuch nachschlagen bei 'INSERT INTO s_core_snippets (id, namespace, shopID, localeID, name, ' in Zeile 371

Ich habe die SQL-Datei jetzt per SSH importiert. Das ist immer mein Plan B. Würde aber trotzdem gerne wissen, wieso es über den phpMyAdmin nie klappt…

Sofern das nicht durchs Forum verursacht wurde, würde ich bei ’ auf ein Encoding-Problem tippen…

@rotmedia schrieb:

Danke für den Hinweis. Den habe ich auch schon mal gefunden gehabt und auch angewendet. Gerade eben auch. Ich gehe wie folgt vor:

  • phpMyAdmin öffnen
  • „SET FOREIGN_KEY_CHECKS=0;“ im SQL-Dialogfenter einfügen und ausführen
  • Import per Datei-Upload starten
  • nach 125 importierten Tabellen foglende Fehlermeldung:

MySQL meldet: 

#1064 - Fehler in der SQL-Syntax. Bitte die korrekte Syntax im Handbuch nachschlagen bei 'INSERT INTO s_core_snippets (id, namespace, shopID, localeID, name, ' in Zeile 371

Du solltest beim Export der Datenbank in phpMyAdmin schon „Fremschlüsselüberprüfung deaktivieren“ bzw. „Disable foreign key checks“ auswählen. Dann steht eine entsprechende Zeile am Anfang und Ende des SQL-Dumps, so daß Du beim Import nichts weiter beachten mußt (außer, daß der SQL-Dump nicht größer als upload_max_filesize und post_max_size ist).

Timme Hosting - schnelles nginx-Hosting

www.timmehosting.de