Hat jemand Erfahrung damit und schonmal gemacht? Ich soll eine Tabelle xyz ersetzen, da hier vom Anweder gemurkst wurde. Ich hab natürlich nicht nur einzelne Tabelle im Backup, sondern die gesamte MySQL-Datenbanken im Backup. Ich hab sowohl das gesamte /var/lib/mysql gesichert gehabt, besitze aber genauso auch einen Dump, den ich mittels mysqldump erzeugt hatte. Wie geht man da nun vor, wenn man nur eine einzelne Tabelle aus dem BACKUP extrahieren möchte, und diese dann anschließend in die bestehende Datenbank importiert?
Kennt jemand ein gut beschrieben HowTo für Debian Squeeze und MySQL in aktuellsten Programmversionen? Ich möchte da nix falsch machen, auch wenn ich es vorher natürlich gesichert in einer Testumgebung wieder durchführen werde.
[GELÖST] einzelne Tabelle aus MySQL-Backup wieder herstellen
- pangu
- Beiträge: 1400
- Registriert: 15.11.2011 20:50:52
- Lizenz eigener Beiträge: GNU General Public License
- Wohnort: /proc/1
[GELÖST] einzelne Tabelle aus MySQL-Backup wieder herstellen
Zuletzt geändert von pangu am 13.02.2012 12:35:33, insgesamt 2-mal geändert.
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.
Re: einzelne Tabelle auf MySQL-Backup wieder herstellen
Öffne das Backup in einem Texteditor. Suche dir raus, was du brauchst. Lösche alles andere, oder kopiere das, was du brauchst, in eine neue *.sql-Datei.
Alternativ: schau’ mal in der Doku von mysql bezüglich des Themas nach. Vielleicht gibt es eine andere Möglichkeit.
cu,
niemand
Alternativ: schau’ mal in der Doku von mysql bezüglich des Themas nach. Vielleicht gibt es eine andere Möglichkeit.
cu,
niemand
- pangu
- Beiträge: 1400
- Registriert: 15.11.2011 20:50:52
- Lizenz eigener Beiträge: GNU General Public License
- Wohnort: /proc/1
Re: einzelne Tabelle auf MySQL-Backup wieder herstellen
Ich hab mal hier nachgeschaut --> http://dev.mysql.com/doc/refman/5.1/de/mysqldump.html
Ich habe auf einer extra Testmaschine aus der 'älteren richtigen' Datenbank nur die einzelne Tabelle exportiert mit dem Befehl:
mysqldump -u root -p datenbankname gewuenschteTabelle >tabelle_export.sql
Dann kopiere ich diese erstellte tabelle_export.sql auf den zu reparierenden Datenbank-Host. Wie spiele ich dort aber diese einzelne Tabelle wieder ein?
mit:
mysqldump -u root -p <tabelle_export.sql ? oder mit
mysqldump -u root -p datenbankname <tabelle_export.sql ?
Ich hab gerade auf 'nem Testsystem die zweitere Zeile abgesetzt, und der Vorgang läuft schon ewig! So groß war die tabelle doch gar nicht. Was zum Geier macht er denn da nun? Ich sehe an den ausgebenden Zeilen, dass es sich nicht um den Dateiinhalt der tabelle_export.sql handelt, ich krieg Werte zu sehen, die auch in anderen Tabellen existieren. Deshalb meine Neugier, was zum Henker da grad abgearbeitet wird.
EDIT: Tröööööt! Am frühen Morgen so 'n Patzer ... looool... ich hab "mysqldump" wieder zum Einspielen der Tabelle verwendet. Der richtige Befehl lautet natürlich "mysql -u root -p datenbankname <tabelle_export.sql" das ganze hatte dann ca. 0.5s gedauert
Ich würde aber jetzt trotzdem noch gerne wissen, was "mysqldump -u root -p datenbankname <tabelle_export.sql" gemacht hat? In die Datenbank geschrieben hat's ja hoffentlich nicht, oder ? Ich vermute mal, dass er einen kompletten dump versucht hat, und als Ausgabe meinen Bildschirm genutzt hat. Kann das sein?
Ich habe auf einer extra Testmaschine aus der 'älteren richtigen' Datenbank nur die einzelne Tabelle exportiert mit dem Befehl:
mysqldump -u root -p datenbankname gewuenschteTabelle >tabelle_export.sql
Dann kopiere ich diese erstellte tabelle_export.sql auf den zu reparierenden Datenbank-Host. Wie spiele ich dort aber diese einzelne Tabelle wieder ein?
mit:
mysqldump -u root -p <tabelle_export.sql ? oder mit
mysqldump -u root -p datenbankname <tabelle_export.sql ?
Ich hab gerade auf 'nem Testsystem die zweitere Zeile abgesetzt, und der Vorgang läuft schon ewig! So groß war die tabelle doch gar nicht. Was zum Geier macht er denn da nun? Ich sehe an den ausgebenden Zeilen, dass es sich nicht um den Dateiinhalt der tabelle_export.sql handelt, ich krieg Werte zu sehen, die auch in anderen Tabellen existieren. Deshalb meine Neugier, was zum Henker da grad abgearbeitet wird.
EDIT: Tröööööt! Am frühen Morgen so 'n Patzer ... looool... ich hab "mysqldump" wieder zum Einspielen der Tabelle verwendet. Der richtige Befehl lautet natürlich "mysql -u root -p datenbankname <tabelle_export.sql" das ganze hatte dann ca. 0.5s gedauert
Ich würde aber jetzt trotzdem noch gerne wissen, was "mysqldump -u root -p datenbankname <tabelle_export.sql" gemacht hat? In die Datenbank geschrieben hat's ja hoffentlich nicht, oder ? Ich vermute mal, dass er einen kompletten dump versucht hat, und als Ausgabe meinen Bildschirm genutzt hat. Kann das sein?
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.
Re: einzelne Tabelle auf MySQL-Backup wieder herstellen
Nochmal: die *.sql-Dateien sind reine Textdateien, und enthalten SQL-Statements, die beim Einlesen ausgeführt werden. Wenn du also wissen willst, was genau passiert, solltest du dir die Datei einfach in einem Pager oder Editor ansehen.
cu,
niemand
cu,
niemand
- pangu
- Beiträge: 1400
- Registriert: 15.11.2011 20:50:52
- Lizenz eigener Beiträge: GNU General Public License
- Wohnort: /proc/1
Re: einzelne Tabelle auf MySQL-Backup wieder herstellen
Das ist mir klar, aber ich fragte ja was der irrtümlicherweise abgesetzte Befehl "mysqldump -u root -p datenbankname <tabelle_export.sql" gemacht hat.
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.
Re: einzelne Tabelle auf MySQL-Backup wieder herstellen
Es sollte dir die betreffende Datenbank auf dem Bildschirm ausgegeben haben. stdin wird von mysqldump normalerweise ignoriert.
cu,
niemand
cu,
niemand
- pangu
- Beiträge: 1400
- Registriert: 15.11.2011 20:50:52
- Lizenz eigener Beiträge: GNU General Public License
- Wohnort: /proc/1
[SOLVED] einzelne Tabelle auf MySQL-Backup wieder herstellen
alright. Danke!
Topic wurde als ERLEDIGT markiert.
Topic wurde als ERLEDIGT markiert.
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.