Andreas: Daten kopieren & sichern in MySql

Beitrag lesen

Hi!

ich muss jetzt mal meine Datenbank in Ordnung bringen.
Ich habe einen Pizza-Shop zur Uebung programmiert.
Zu diesem Shop gehoert halt auch ein Redaktionssystem, mit dem man die Inhalte der Speisekarte aendern kann. Nun habe ich zuhause brav eine original-Speisekarte abgetippt und wuerde gern diesen Datenbankinhalt auf den Server meines Providers uebertragen.

->Wie geht das?

Wie Gunnar beschrieben hat, und ich kenne einige Speisekarten, und wenn es Dir möglich war die in wenigen Stunden von Hand abzutippen ist das garantiert nicht zu groß für den Upload!!! Ich habe einen Dump mit mehreren 10.000 Datensätzen, der hatte nichtmal 1 MB! Kommt etwas auf die Daten an, aber wie groß ist denn Deine Dump-datei? Was hast Du für eine Internet-Anbindung? Sonst mußt Du den Dump für jede Tabelle einzelnd machen. Wenn das alles mit php-myadmin nicht geht, dann kannst Du es nur über einen Upoad über ftp, und dann über die Kommandozeile einlesen, wenn Du das nicht darfst/kannst bleibt Dir nur noch der SQL-Befehl "LOAD DATA INFILE".

Ein Problem sind zum Beispiel die id's. Die habe ich in der Struktur der Tabellen auf 'auto_increment' gestellt. Jetzt habe ich nach einigen Aenderungen Luecken in den id-Spalten. Wenn ich die Tabellen einfach ueberspiele (ohne id's - anders gehts ja gar nicht) werden die id's in der Ziel-Datenbank wieder lueckenlos durchnumeriert. Das heisst aber, dass Verknuepfungen - ueber die id's (als Schluessel zwischen den Tabellen) - nicht mehr stimmen.

Das ist egal, Du kannst ruhig die IDs mit dumpen und in die neue Tabelle schreiben, das mit auto-incerement ist nur für den Fall das keine ID manuell angegegeben ist!

->Kann mir da mal jemand was grundsaetzliches dazu schreiben?
->Es geht mir dabei ja auch darum: wie sichert man die Daten einer Datenbank so, dass man sie nach einem Crash wieder aufspielen kann?

mit php myadmin => Dump schema
ode2r über das Kommandozeilentool mysqldump, einlesen kannst Du einen Dump entweder über php-myadmin, oder das Kommandozeilentool mysql!

Viele Grüße
Andreas