sehr große MySQL-Tabelle kopieren

maxikey

Erfahrenes Mitglied
Heyhoo,

Ich habe ein riesiges Problem. Ich habe einen Goneo-Webspace und arbeite mit einer sehr großen Tabelle. Diese besteht aus Internet-Adressen, welche ich öffnen will.
Da das an einem Stück laufen sollte und Goneo mir bei so großen Datenmengen einen 500-Error liefert, will ich es erstmal mit einem offline-Server (MAMP) versuchen. (Ich hoffe das hat Sinn)

Da ich keine Lust habe die Tabelle neu zu erstellen, muss ich sie irgendwie exportieren.
Das Problem: Die Tabelle hat 127000 Zeilen.

Auch hier gibt mir Goneo also bei einem Export-Versuch einen 500-Error.

Was soll ich tun?

DANKE IM VORAUS

MFG Maxi

PS: Ich habe keinen SSH-Zugang
 
Moin Maxi,

bastle dir ein kleines Skript, welches die Daten Häppchenweise holt.

Ich würde da in einer Schleife so jeweils 1000 Datensätze holen, und nebenbei bei jedem Schleifendurchlauf die Zeit messen, die bereits vergangen ist. Bei >25 Sek speicherst du das Ganze irgendwo und sendest einen Location-Header zum selben Skript, wobei du als Parameter die Anzahl bereits geholter Datensätze übergibst, damit du weisst, wo es in der nächsten Runde weitergeht.
 
OK! Gibt es dann eigentlich auch einen Mysql-Select-Code, mit dem ich angeben kann: starte bei der Zeile, wo ID=10 und hole dir 1000 Datensätze?


Was soll das mit dem Sekunden messen?

MFG Maxi
 
Die Zahl der Datensätze kannst du per LIMIT im SELECT festlegen.


Zur Zeit: zu Beginn definierst du eine Variable mit der aktuellen Zeit als Inhalt...bei jedem Schleifendurchlauf schaust du dann nach, wieviel seit dem Startpunkt vergangen ist.
 
Und kann ich auch festlegen, ab welcher Zeile er SELECTEN soll - also bei welcher Zeile er beginnen soll?


PS: Meint ihr, dass der Datenbank-wechsel noch notwendig ist, wenn ich mit einem solchen Script auch die Websites nacheinander fopen kann?

MFG MAXI
 
Aber wenn ich 1000 Zeilen selecten will, und ich bei der 2000sten Zeile anfangen will, wie mach ich das dann? Muss ich LIMIT dann zweimal schreiben?

MFG Maxi
 
... LIMIT X,Y
X <- wo du starten willst, 0 basierend
Y <- wieviele ausgewählt werden sollen

Also Beispiel:
... LIMIT 0,1000
... LIMIT 1000,1000
... LIMIT 2000,1000
 

Neue Beiträge

Zurück