Seite 1 von 1

Importieren mittels phpmyadmin lokal (Benötige Bitte Hilfe)

Verfasst: 06.11.2002 21:35
von Fluckzer
Also folgendes Problem:

Bin bei hosteurope und habe meine Datenbank mittels des dort in der FAQ angegebenen PHP-Skripts per dump.sql gesichert. Das hat auch soweit reibunglos funktioniert.

Nun habe ich mir am lokalen Rechner, zum Programmieren und Erweitern meine eigene Entwicklungsumgebung mit Apache 2.0.42, MySQL 3.23.52, PHP 4.2.3 und phpMyAdmin 2.3.2 eingerichtet. Scheint auch alles soweit funktionfähig. Wollte nun die laufende Datenbank des Forums auf meinen lokalen Rechner übertragen.

Nun folgendes: Mein eingesetztes Forum auf hosteurope hat mittlererweile mit über 50.000 Beiträgen eine solche Grösse erreicht, dass das dump-file mittlereweile knapp über 70 MB beträgt. Mein Rechner (PII 350MHZ über 400 MB) ist allerdings nicht in der Lage diese gigantische Textdatei noch darzustellen um mal reinzuschauen. Dies bräuchte ich eigentich auch nicht...allerdings ist es mir bis jetzt nicht gelungen die Datenbank mittels dieser dump.sql auf meinem lokalen Rechner wieder herzustellen. PHPMyAdmin bricht nach ca. 20 Sekunden mit folgender Bemerkung ab: "Kein SQL-Befehl".

Ok, dann habe ich mir die Mühe gemacht, von Hosteurope jede Tabelle einzeln im SQL-Statement zu sichern und lokal wieder aufzuspielen. Bei kleinen Tabellen, die soweit keinen zusätzlichen Usertext mit Sonderzeichen und grosser Länge enthalten, konnte ich auch alle Tabellen wieder aufspielen.
Bei folgenden Tabellen, ist mir dies aber mit der gleichen Fehlermeldung wie oben (Kein SQL-Befehl!) nicht gelungen, was auch erklärt warum ich die allgemeine dump.sql nicht aufspielen konnte:

phpbb_posts.sql --> ca. 5 MB
phpbb_posts_text.sql --> ca. 11 MB
phpbb_privmsgs_text.sql --> ca. 2,7 MB
phpbb_search_wordlist.sql --> ca. 4 MB
phpbb_search_wordmatch.sql --> ca. 48 MB

Nun kalkuliere ich damit, dass dies entweder an der Dateigrösse liegt oder irgendein anderes Problem mit Zeilenumbruch, Sonderzeichen oder sowas. Habe in den kleineren der oben genannten mal reingeschaut, soweit scheinen mir die komplett und vollständig zu sein. Problemlösung stellt sich in soweit schwer, da phpmyadmin nur den Text "Kein SQL-Befehl" ausgibt ohne eine bestimmte Zeile zu kennzeichnen oder genauere Angaben zu machen.

Hat jemand ne Lösung für mich parat? Ich hoffe alle relevanten Angaben gemacht zu haben. Bittöööööö :roll:

Verfasst: 06.11.2002 21:39
von Fluckzer
Ach so noch kleine Anmerkung die wichtig sein könnte. Nur die Strukturen der Tabellen konnte ich problemlos aufspielen. In den oben genannten *.sql dateien befinden sich nun lediglich die Statements für die Daten.

Verfasst: 06.11.2002 22:33
von Mister_X
probiere mal das ganze mit der mysql.exe (im mysql/bin Ordner) zu importieren, die Syntax ist so wie hier: http://www.phpbb.de/viewtopic.php?t=6197

Verfasst: 06.11.2002 22:52
von Fluckzer
Mister_X hat geschrieben:probiere mal das ganze mit der mysql.exe (im mysql/bin Ordner) zu importieren, die Syntax ist so wie hier: http://www.phpbb.de/viewtopic.php?t=6197
Habe natürlich das Forum vorher durchsucht und war schon auf diesen Thread u.ä. gestossen. Was mich erstmal oben stört ist, dass ich ja kein Timeout-Fehler oder sowas bekomme, sondern nur die Meldung, dass es kein SQL-Befehl sei (ich korrigiere mich übrigens: Die meldung kommt bereits nach 4-5 Sekunden). Naja, ok, wenn ich aber dein Rat folge, muss ich zugeben, dass mir die Angaben nicht ganz klar sind. Vielleicht hilfst du mir netterweise nochmal, da ich mit meinen Versuche bis jetzt den Befehl nicht erfolgreich ausführen konnte (kommt immer ein Hinweis, dass ich ein Fehler in Line1 habe, also dem eingebenen Befehl).

Also ich rufe in meinem Windows MySQL Bin- Verzeichniss,die mysql.exe auf, daraufhin öffnet sich logischerweise das Dos-Fenster mit:

mysql>

so, in dem von dir angegebenen Thread steht folgendes:
<?php
system("/usr/bin/mysql -uUSERNAME -pPASSWORT -hIhr.Datenbank.Server.de DATENBANKNAM< /VOLLER_PFAD/dump.sql", $fp);
if ($fp==0) echo "Daten importiert"; else echo "Es ist ein Fehler aufgetreten";
?>
ok, wenn ich das richtig verstehe interressiert mich folgender Teil bei der Kommandozeilenangabe:
-uUSERNAME -pPASSWORT -hIhr.Datenbank.Server.de DATENBANKNAM< /VOLLER_PFAD/dump.sql
ist das so korrekt?
wenn frage ich mich was ich jetzt genau eingeben muss, wenn ich localhost bin?

username und passwort dürften klar sein (sind ja wohl die die ich auch in der ini-Datei von mysql sehen kann).

bei
-hIhr.Datenbank.Server.de DATENBANKNAM
habe ich

-hLOCALHOST MEINEDATENBANK

eingegeben(?)

Aber auf was bezieht sich "VollerPfad". Geht das von dem Grundpfad meines Apache-Servers aus? oder von dort wo mein MYSQL-Verzeihniss liegt?

für die dump.sql Datei habe ich

phpbb_posts.sql

aus meinen obengenannte Tabellen genommen.

Also habe ich nun folgendes eingegeben:
-uMEINMYSQLNAME -pMEINSQLPASSWORT -hLOCALHOST MEINEDATENBANK < /phpbb_posts.sql;
Also am Ende habe ich ein Semikolon gesetzt, weil ich es sonst nicht abschicken konnten. Die phpbb_posts.sql hatte ich ins gleiche Verzeichniss wie das BIn-Verzeichniss kopiert, aber auch die Variante von dem Pfad meines Apache-Startpfads habe ich getestet, aber irgendwas ist an der Syntax falsch.

Über deine oder andere Hilfe bin ich weiterhin dankbar...

Verfasst: 06.11.2002 22:58
von Mister_X
Du hast welche Windowsversion ? Ich geh gerade mal von Windows 2000 aus :-?
Gehe in die DOS-Console (Start -> Ausführen -> cmd -> OK)
gehe dort in dein mysql/bin verzeichnis
kopiere deine *.sql files in das bin verzeichnis (kannst du ruhig mit dem Windowsexplorer machen ;))
tippe in die DOS Box folgendes: mysql.exe -uMEINMYSQLNAME -pMEINSQLPASSWORT -hLOCALHOST MEINEDATENBANK < phpbb_posts.sql

jetzt einfach warten, bis eine Erfolgsmeldung ausgegeben wird, kann schonmal längern dauern.

Verfasst: 06.11.2002 23:10
von Fluckzer
Mister_X *knutscha* (rein freundschaftlich, nichts schwul oder so :wink: :lol: )...

...hat funktioniert. Na nach so einer Idiotensicheren Anweisung mittlererweile :wink: musste ich es ja dann auch mal verstehen 8)

Darf man keiner Sau erzählen, dass ich das nicht selbst hinbekommen habe :roll:

Dank dir nochmal :) (auch wennn solche Fragen schon mal in ähnlicher Weise beantwortet wurden - aber noch nicht so ausführlich :D ).

Bist ein richtiger Siegertyp 8) :wink: