1010 Stimmen

MySQL: Name einer Datenbank umbenennen

Tipp von Stefan Trost | Letztes Update am 18.01.2023 | Erstellt am 09.05.2012

In diesem Tipp möchte ich euch zeigen, wie ihr den Namen einer MySQL-Datenbank schnell und einfach ändern könnt. Da die Funktion "RENAME DATABASE" nur zwischen der Version 5.1.7 und 5.1.23 in MySQL enthalten war und wegen der Gefahr des Datenverlustes schnell wieder aus dem Leistungsumfang entfernt wurde, müssen wir uns für das Umbenennen einer Datenbank eines einfachen kleinen Tricks bedienen.

Als Beispiel möchten wir die Datenbank "db_alt" in "db_neu" umbenennen. Wir benötigen zwei Schritte für die Umbenennung:

Schritt 1: Leere Datenbank anlegen

Zunächst legen wir eine leere Datenbank mit dem gewünschten Namen unser neuen Datenbank an.

Am einfachsten ist es, wenn wir dafür einfach die Funktionen von phpMyAdmin nutzen. Wir können uns aber natürlich auch dem MySQL-Befehl "CREATE DATABASE" bedienen, in unserem Beispiel also "CREATE DATABASE db_neu".

Schritt 2: Tabellen von der alten in die neue Datenbank verschieben

Im nächsten Schritt benutzen wir den folgenden MySQL-Befehl für jede unserer Tabellen, um die Tabellen von unserer alten Datenbank in die neue Datenbank zu "verschieben":

RENAME TABLE db_alt.tab1 TO db_neu.tab1;
RENAME TABLE db_alt.tab2 TO db_neu.tab2;
RENAME TABLE db_alt.tab3 TO db_neu.tab3;
...

Das Prinzip ist das folgende: Wir haben in der alten Datenbank "db_alt" die Tabellen "tab1", "tab2" und "tab3". Durch den gezeigten Befehl können wir die Tabellen so "umbenennen", dass sie sich nach dem Umbenennen in der neuen Datenbank "db_neu" befinden. Da die neue Datenbank für diese Aktion schon existieren muss, haben wir sie vorher angelegt.

Auch bei großen Datenbanken mit mehreren Millionen Einträgen funktioniert diese Funktion sehr schnell in wenigen Millisekunden. Damit ist es auf diese Art und Weise viel einfacher als die Datenbank beispielsweise zu exportieren um sie danach wieder unter einem anderen neuen Namen zu importieren.

Diese Möglichkeit funktioniert übrigens gleichermaßen sowohl mit MyISAM- als auch mit InnoDB-Datenbanken.

AntwortenPositivNegativ
55 Stimmen

In phpMyAdmin gibt es auch eine Funktion, um das zu bewerkstelligen. Die Funktion findet man, wenn man die Datenbank ausgewählt hat unter dem Punkt "Operations".

Es gibt allerdings zwei Probleme damit:

  • Bei vielen Webspace-Anbietern ist die Funktion deaktiviert.
  • Die Funktion benutzt INSERT und SELECT Anweisungen, um die Transaktion durchzuführen. Daher dauert es mit diese Funktion bei großen Datenbanken unter Umständen sehr sehr lange.

Daher ein sehr guter und brauchbarer Tipp!
11.05.2012 um 21:26

AntwortenPositiv Negativ
Antworten

Über den Autor

AvatarSoftware von Stefan Trost finden Sie auf sttmedia.de. Benötigen Sie eine individuelle Software nach Ihren eigenen Wünschen? Schreiben Sie uns: sttmedia.de/kontakt
Profil anzeigen

 

Ähnliche Themen

HTML-Formular mit Daten vorbelegen

Tutorial | 0 Kommentare

Wichtiger Hinweis

Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.

Jetzt mitmachen

Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.