66 Stimmen

MySQL: Name einer Datenbank umbenennen

Tipp von Stefan Trost | 09.05.2012 um 00:55

In diesem Tipp möchte ich euch zeigen, wie man den Namen einer Datenbank schnell und einfach ändern kann. 

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 wieder entfernt wurde, müssen wir uns für das Umbenennen einer Datenbank eines einfachen Tricks bedienen. Im Beispiel möchten wir die Datenbank dbalt in dbneu umbenennen.

1. Leere Datenbank anlegen

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

2. Tabellen von der alten in die neue Datenbank verschieben

Anschließend benutzen wir folgenden MySQL Befehl, um die Tabellen von unser alten Datenbank in die neue Datenbank zu "verschieben":

RENAME TABLE dbalt.tab1 TO dbneu.tab1;
RENAME TABLE dbalt.tab2 TO dbneu.tab2;
RENAME TABLE dbalt.tab3 TO dbneu.tab3;

Das Prinzip ist folgendes: Wir haben in der Datenbank "dbalt" 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 "dbneu" 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 so viel einfacher als die Datenbank zu exportieren um sie danach wieder zu importieren.

Diese Möglichkeit funktioniert mit MyISAM und InnoDB Datenbanken.

AntwortenPositivNegativ
Avatar
00 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

MySQL: SELECT 0 statt NULL
Frage | 4 Antworten

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.