MySQL Datenbank wird nicht kopiert
Hallo,
ich habe gerade ein ziemlich großes Problem, das ich leider nicht beheben kann. Ich werde versuchen es anschaulich zu erklären:
Zuerst habe ich mit Joomla ein CMS auf einem "Server A" (ich benenne die Server nun einfach mal so) eingerichtet und in der dazugehörigen Datenbank "speicher" abgespeichert. Der Provider verfügt über einen vorinstallierten PhpMyAdmin-Zugriff.
Daraus habe ich dann über "Exportieren" den gesamten SQL-Code kopiert und in die Datenbank "db" auf "Server B" eingefügt. Das Joomla lief danach fehlerfrei. Alles wurde optimal kopiert.
Nun kommen wir zu meinem Problem: Diese beiden Server waren Freehoster, die zwar halbwegs schnell waren, jedoch mit Werbung vertreten waren. Ich bin selbst bei einem kostenpflichtigen örtlichen privat-Hoster, der auch PHP und MySQL unterstützt und anbietet, da gibt es aber ein Problem:
Dieser "Server C" hat keinen PhpMyAdmin-Zugriff und so kam ich dann auf MySQL-Dumper, womit ich auch schön auf die Datenbank zugreifen kann. Joomla war übrigens auch in der Lage, eine Verbindung zur Datenbank herzustellen und ist auch mit dieser verbunden.
Kopiere ich nun den SQL-Code von den anderen Servern über MySQL-Dumper auf den "Server C", liefert dieser mir seitenlange Fehlermeldungen á la Syntaxfehler und ähnlichen. Die Tabellen werden erstellt, jedoch sind diese leer.
Auf "Server B" habe ich aber eine neue Datenbank "test" erstellt, um zu überprüfen, ob der kopierte SQL-Code fehlerhaft war, da lief dann aber wieder alles optimal.
Ich wollte nun fragen, ob das irgendwie damit zusammenhängt, dass ich bei den anderen Servern PhpMyAdmin genutzt habe, was der neue so an sich nicht anbietet und es auch nicht richtig funktioniert, wenn ich es nachträglich installiere. Komprimierung etc. beim Export ist alles das gleiche gewesen, was vorher schon in der "problematischen" Datenbank eingestellt war.
Hatte jemand vielleicht ähnliche Probleme oder weiß einer vielleicht Rat?
Es handelt sich hierbei um eine Firmenseite, daher brauche ich Eure Hilfe so schnell es geht
ich habe gerade ein ziemlich großes Problem, das ich leider nicht beheben kann. Ich werde versuchen es anschaulich zu erklären:
Zuerst habe ich mit Joomla ein CMS auf einem "Server A" (ich benenne die Server nun einfach mal so) eingerichtet und in der dazugehörigen Datenbank "speicher" abgespeichert. Der Provider verfügt über einen vorinstallierten PhpMyAdmin-Zugriff.
Daraus habe ich dann über "Exportieren" den gesamten SQL-Code kopiert und in die Datenbank "db" auf "Server B" eingefügt. Das Joomla lief danach fehlerfrei. Alles wurde optimal kopiert.
Nun kommen wir zu meinem Problem: Diese beiden Server waren Freehoster, die zwar halbwegs schnell waren, jedoch mit Werbung vertreten waren. Ich bin selbst bei einem kostenpflichtigen örtlichen privat-Hoster, der auch PHP und MySQL unterstützt und anbietet, da gibt es aber ein Problem:
Dieser "Server C" hat keinen PhpMyAdmin-Zugriff und so kam ich dann auf MySQL-Dumper, womit ich auch schön auf die Datenbank zugreifen kann. Joomla war übrigens auch in der Lage, eine Verbindung zur Datenbank herzustellen und ist auch mit dieser verbunden.
Kopiere ich nun den SQL-Code von den anderen Servern über MySQL-Dumper auf den "Server C", liefert dieser mir seitenlange Fehlermeldungen á la Syntaxfehler und ähnlichen. Die Tabellen werden erstellt, jedoch sind diese leer.
Auf "Server B" habe ich aber eine neue Datenbank "test" erstellt, um zu überprüfen, ob der kopierte SQL-Code fehlerhaft war, da lief dann aber wieder alles optimal.
Ich wollte nun fragen, ob das irgendwie damit zusammenhängt, dass ich bei den anderen Servern PhpMyAdmin genutzt habe, was der neue so an sich nicht anbietet und es auch nicht richtig funktioniert, wenn ich es nachträglich installiere. Komprimierung etc. beim Export ist alles das gleiche gewesen, was vorher schon in der "problematischen" Datenbank eingestellt war.
Hatte jemand vielleicht ähnliche Probleme oder weiß einer vielleicht Rat?
Es handelt sich hierbei um eine Firmenseite, daher brauche ich Eure Hilfe so schnell es geht
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 134726
Url: https://administrator.de/contentid/134726
Ausgedruckt am: 22.11.2024 um 04:11 Uhr
6 Kommentare
Neuester Kommentar
Moin,
ich würde die Fehlermeldung mal genau angucken. Gerne vergessen die Entwickler z.B. die Sonderzeichen wie " mittels Escape-Zeichen ungültig zu machen. D.h. deine Datenbank meint dann das der Textteil da zuende wäre und glaubt dahinter wäre nen neuer Befehl -> und kotzt dir das ganze dann vor die Füße!
Grad wenn du unterschiedliche Systeme für den Ex- und Import nutzt wird das gern auftauchen (der eine macht z.B. immer ein 'feldname', der andere erwartet da irgendwas anderes,...). Von daher würde ich versuchen alles mit demselben DBMS zu machen...
ich würde die Fehlermeldung mal genau angucken. Gerne vergessen die Entwickler z.B. die Sonderzeichen wie " mittels Escape-Zeichen ungültig zu machen. D.h. deine Datenbank meint dann das der Textteil da zuende wäre und glaubt dahinter wäre nen neuer Befehl -> und kotzt dir das ganze dann vor die Füße!
Grad wenn du unterschiedliche Systeme für den Ex- und Import nutzt wird das gern auftauchen (der eine macht z.B. immer ein 'feldname', der andere erwartet da irgendwas anderes,...). Von daher würde ich versuchen alles mit demselben DBMS zu machen...
Moin,
also im endeffekt ganz einfach: Nehmen wir an du hast in der Datenbank stehen "Das "ABC" ist ganz schön lang"
Beim Export kann es passieren das dein Programm daraus etwas wie
Das \"ABC\" ist ganz schön lang
macht -> damit es mit dem Import auch wieder hinhaut:
insert into (...) values ("Das \"ABC\" ist ganz schön lang")
würde funktionieren. Dumm nur das es auch passieren kann das dein Programm beim Export keinen \ davor macht - weil es sich erst beim
Import darum kümmert, weil es den Import-String anders aufbaut oder warum auch immer. Dann nimmt dein neues Programm folgenden String
insert into (...) values ("Das "ABC" ist ganz schön lang")
und dabei knallt es dann gewaltig! Denn jetzt meint deine DB das der String nur aus "Das " besteht - dahinter kommt ja nen Anführungszeichen welches den String beendet. Und was das DBMS jetzt mit ABC anfangen soll weiss es natürlich nicht - also raus mit ner Fehlermeldung und den ganzen Kram schnell vergessen!
Hier hilft es am besten wenn du für den Export und den Import dasselbe System verwendest. Im Zweifel installier dir halt PHPMyAdmin auf beiden Servern und mache es darüber...
also im endeffekt ganz einfach: Nehmen wir an du hast in der Datenbank stehen "Das "ABC" ist ganz schön lang"
Beim Export kann es passieren das dein Programm daraus etwas wie
Das \"ABC\" ist ganz schön lang
macht -> damit es mit dem Import auch wieder hinhaut:
insert into (...) values ("Das \"ABC\" ist ganz schön lang")
würde funktionieren. Dumm nur das es auch passieren kann das dein Programm beim Export keinen \ davor macht - weil es sich erst beim
Import darum kümmert, weil es den Import-String anders aufbaut oder warum auch immer. Dann nimmt dein neues Programm folgenden String
insert into (...) values ("Das "ABC" ist ganz schön lang")
und dabei knallt es dann gewaltig! Denn jetzt meint deine DB das der String nur aus "Das " besteht - dahinter kommt ja nen Anführungszeichen welches den String beendet. Und was das DBMS jetzt mit ABC anfangen soll weiss es natürlich nicht - also raus mit ner Fehlermeldung und den ganzen Kram schnell vergessen!
Hier hilft es am besten wenn du für den Export und den Import dasselbe System verwendest. Im Zweifel installier dir halt PHPMyAdmin auf beiden Servern und mache es darüber...