Seite 1 von 2

Umzug - Dump zu gross - einzelne Tabellen ex- + importieren?

Verfasst: 13.09.2002 19:14
von uwe.ha
Hallo zusammen,

ich habe mir heute schon "den Wolf gedumpt" ... verschiedene Dump erstellt (20 - 30 MB) ... mehrfach vom alten Server downgeloadet und auf hosteurope upgeloadet ... KEIN IMPORT MÖGLICH :-(
- weder über phpMyAdmin, noch über "Import.php-Script" ... die ersten 10 - 15 Tabellen wurden zwar sammt Inhalt erstellt ...
- sobald aber die großen Tabellen (ab ca. 2 MB) dran kamen "rien ne vas plus"
- Nur ein Struktur-Dump: Kein Problem ...
- Habe nun aus dem Dump "manuell" die einzelnen Tabellen rauskopiert und in phpMyAdmin reinkopiert (doofenarbeit) ... hat auch alles geklappt ... nur fehlen mir jetzt noch die großen Tabellen (post_text , search_wordlist , search_wordmatch )

- WIE bekomme ich nun diese 3 Tabellen auf meinen neuen Server importiert? BITTE BITTE HILFE !!!
- per copy & paste (siehe oben) geht´s nicht ...

VIELEN DANK FÜR HILFE!

Verfasst: 13.09.2002 23:06
von Pacman
Hi,
ganz einfach indem Du sie teilst.

Die sollten ja etwa so aussehen:

Code: Alles auswählen

INSERT INTO phpbb_posts_text (post_id, bbcode_uid, post_subject, post_text) VALUES( '4', 'e5a35d4c7c', 'Ned schlecht!', '[color=black:e5a35d4c7c]Sieht ja wirklich nicht schlecht aus! Die Sache mit der Skinauswahl und den zahlreich lustigen Smilies ist cool :D [/color:e5a35d4c7c]!

Lob an die WebMaster *schleim* 8)');
Du darfst nur die Zeile selber nicht unterbrechen, also INSERT INTO phpbb_posts_text bis ); gehört zusammen.
Und den Rest halt in kleine Stücken teilen und zurückspielen.....

Verfasst: 14.09.2002 19:16
von uwe.ha
Civic_Vti hat geschrieben:Und den Rest halt in kleine Stücken teilen und zurückspielen.....
... das dachte ich mir schon ... und hab´ es nun auch (rund 3 Stunden lang) gemacht ... *idiotenarbeit*

Aber mal im Ernst: Es kann doch nicht sein, dass phpMyAdmin (oder auch die "manuelle" Methode mit der import.php oder die phpbb-eigene Backup-Funktion) NICHT in der Lage ist, große Tabellen (über 2 MB bzw. mit über 5.000 Datensätzen) zu importieren *gr* ... wofür mach ich denn das Backup, wenn ich es später eh nicht verwenden kann :-(
--
Uwe

Verfasst: 14.09.2002 19:51
von itst
Mensch Leute, rafft Ihrs mal?!

Sorry, ist nicht persönlich gemeint...

Scripte haben auf Servern eine maximale Ausführungsdauer. Wird diese Überschritten, wird das Script vom Server beendet. Macht ja auch Sinn...

Die Lösung für dieses Problem: Backups und Restores mit mysql selbst machen: http://www.phpbb.de/viewtopic.php?t=113 ... sql+backup

Verfasst: 14.09.2002 22:20
von uwe.ha
Hi,

ist die von Dir beschriebene Vorgehensweise also etwas anderes als:

-in phpMyAdmin unter Dump | Stuktur und Daten | Senden ... dann auf OK (zum Exportieren) und ... (nach Hochladen des dump.sql ins Hauptverzeichnis)
- im phpMyAdmin-Befehlsfeld "SQL-Befehl ausführen" dump.sql eingeben und OK-Button drücken (zum Importieren)?

... das hat bei mir nämlich NICHT funktioniert ... bzw. nur die ersten paar kleinen Tabellen, aber also dann die großen Tabellen drankamen, ist es abgebrochen :-(
--
Uwe

Verfasst: 14.09.2002 22:53
von Mister_X

Verfasst: 15.09.2002 01:07
von itst
Heiliger Strohsack. JA.

phpMyAdmin ist was? Richtig, ein Script, das auf einerm Webserver ausgeführt wird. Was macht ein Webserver, wenn ein Script zu lange braucht? Wieder richtig. Er killt es. Also, was passiert phpMyAdmin? Schon wieder richtig. Es wird gekillt.

Danke Mister_X...

Verfasst: 15.09.2002 11:05
von uwe.ha
Also weiter "für Dumme" ... wenn ich jetzt nicht frag´ , bleib ich dumm ;-)

ok, phpMyAdmin ist ein CRIPT, das abgebrochen wird, hab´s verstanden!
itst schrieb:
2) Backup mit mysqldump.
mysqldump ist ein programm, das bei MySql dabei ist.
Dieses mysqldump ist dann - im Gegensatz zu phpMyAdmin - also KEIN Script? Richtig?
Es ist in dem Paket, das man auf http://www.mysql.com/ runterladen kann dabei.
... ich bin nun bei hosteurope. Dort ist mysql ja bereits vorhanden. Haben die das mysqldump auch schon installiert?
- Wenn ja: Wie kann ich es nutzen? Über die Befehlseingabe von phjMyAdmin? Wohl eher nicht, oder?

Wenn nein: Muss / kann ich das selbst installieren? ... Wo gibt´s ein dt. Tutorial, damit ich nicht "so blöde" fargen muss?

@itst: Dein Code für den Import ( mysql -u user -h host -p -C
) ähnelt der "manuellen Methode, die hier im Forum und auch bei hosteurope für den import größerer Dumps empfohlen wird:
<?php
system("/usr/bin/mysql -uUSERNAME -pPASSWORT -hIhr.Datenbank.Server.de DATENBANKNAME < /is/htdocs/kdnummer/www.domain.de/dump.sql", $fp);
if ($fp==0) echo "Daten importiert"; else echo "Es ist ein Fehler aufgetreten";
?>

Isses das Gleiche ... oder doch was anderes? ... auf jeden Fall hat diese php Methode auch nur so lange funktioniert, bis eine große Tabellen mit über 4.000 Datensätzen dran kam ... dann isses auch abgebrochen (lag in diesem Fall wohl weniger an der Zeit, sondern eher an der "zu verarbeitenden Menge").
Nochmal genauer - um Missverständnisse zu vermeiden: Einen Dump per phpMyAdmin zu erstellen war bei mir KEIN PROBLEM. Das IMPORTIEREN war das PROBLEM. Die "manuelle Methode" lief problemlos, als es nur darum ging, ein struktur-dump zu importieren. Auch der struktur+data-dump lief problemlos AN (es wurden rund 10 Tabellen importiert). Als dann jedoch eine große Tabelle "in Arbeit" war ... war ENDE.

Vielleicht wird mir (und vielen Anderen) doch noch klar, wie es RICHTIG GEHT ;-))
--
Danke Uwe

Verfasst: 15.09.2002 22:34
von itst
...

Nochmal im Klartext: Alles, was über einen Webserver geht, wird nach einer bestimmten Zeit (i. d. R. 30 sec [CPU-Zeit]) abgebrochen.

Davon betreoffen ist alles, was Du mit einem web-basierten Script machst.

Gehe zu mysql.com. Lade Dir MySql (Nicht MAX) runter. Installiert es. Dann hast Du ein Verzeichnis c:\mysql\bin auf Deiner Platte. Da befiondet sich sowohl die Datei mysqldump.exe als auch die mysql.exe (der MySql-Client).

Wenn Du diese Dateien benutzt (von Deinem Rechner aus), hast Du keine Probleme mehr mit irgendwelchen Timeouts.

Verfasst: 10.10.2002 19:03
von monotek
@ uwe.hanss

hosteurope export

Code: Alles auswählen

<?php
system("/usr/bin/mysqldump -uUSERNAME -pPASSWORT -h ihr.datenbankserver.de DATENBANKNAME > /is/htdocs/kdnummer/www.domain.de/dump/dump.sql", $fp);
if ($fp==0) echo "Daten exportiert"; else echo "Es ist ein Fehler aufgetreten";
?>
hosteurope export gziped

Code: Alles auswählen

<?php
system("/usr/bin/mysqldump -uUSERNAME -pPASSWORT -h ihr.datenbankserver.de DATENBANKNAME | /bin/gzip > /is/htdocs/kdnummer/www.domain.de/dump/dump.sql.gz", $fp);
if ($fp==0) echo "Daten exportiert"; else echo "Es ist ein Fehler aufgetreten";
?>
hosteurope import

Code: Alles auswählen

<?php
system("/usr/bin/mysql -uUSERNAME -pPASSWORT -hIhr.Datenbank.Server.de DATENBANKNAME < /is/htdocs/kdnummer/www.domain.de/dump.sql", $fp); 
if ($fp==0) echo "Daten importiert"; else echo "Es ist ein Fehler aufgetreten";
?>

so. hab nun auch noch ne frage. gibts auch ein script um ein gziped dump zu importieren ?