Eine MySQL Tabelle via SQL Befehl clonen

Veröffentlicht am:

In letzter Zeit poste ich so einige Snippets aus dem MySQL/Datenbankbereich, die euch das Leben bei der Arbeit unter der Motorhaube einfacher machen können. Und heute ist schon wieder so ein nützliches Beispiel dran.

Dieses Mal soll eine bereits bestehende MySQL-Tabelle mit allen Daten kopiert werden. Entweder weil ihr sie als Backup braucht oder daran etwas ausprobieren müsst.

Wenn ihr Zugriff auf phpmyadmin habt, wechselt dort in den SQL-Bereich und erstellt erstmal die Kopie der Originaltabelle nur mit den entsprechenden Spalten.

CREATE TABLE neuetabelle LIKE originaltabelle

Es ist klar, dass ihr die Bezeichner neuetabelle und originaltabelle mit euren Tabellennamen ersetzt.

Dann befüllt ihr die neu duplizierte Tabelle mit den Daten der Originaltabelle:

INSERT INTO neuetabelle SELECT * FROM originaltabelle

Voila.

Hinweis: Falls die Originaltabelle in ständiger Beanspruchung ist (Änderung der Einträge, Neue Einträge, Eintragslöschungen) empfiehlt es sich, diese mittels eines LOCK TABLE Befehls für den Zeitraum des Klonens stillzulegen.

Bitte beachten Sie: die Informationen in diesem Artikel wurden zum Zeitpunkt seiner Erstellung nach bestem Wissen und Gewissen zusammengetragen, aufbereit und niedergeschrieben.
Diese können heute, abhängig vom Zeitpunkt der Veröffentlichung und des behandelnden Themas, überholt und ungültig sein.
Es obliegt den Lesern, diese Inhalte mit dem aktuellen Wissensstand abzugleichen.

Artikel online seit: 7 Jahren 1 Monat 15 Tagen
Letzte Änderung: 12.03.2020