Es kommt häufiger mal vor, dass man eine sehr große Datenbank innerhalb des eigenen Webspace kopieren bzw. umziehen muss. Früher habe alles in eine Datenbank gestopft. Der Beweggrund war, alles an einem Ort zu haben. Außerdem war das zu Zeiten, als Datenbanken Luxus waren und richtig Geld gekostet haben.
Heute ist das natürlich anders. Da bekommt jede Anwendung ihre eigene Datenbank und kann sich dort austoben. Dann steht man aber vor der Aufgabe, ein gewachsenes Geflecht zu entzerren und neu zu ordnen. Dabei müssen oftmals viele Tabellen von einer Datenbank in eine andere umziehen.
phpmyadmin ist das Nadelöhr
Auf shared Webhosting erledigt das fast und ausschließlich phpmyadmin. Diese Datenbankverwaltung hat sich zwar seit Jahren bewährt, aber bei großen Datenbankoperationen zeigt sie sich überfordert. Bei recht umfangreichen und seit Jahren laufenden WordPress Webseiten kann das schnell passieren. Das hat folgende Gründe:
PHP ist als Bedienoberfläche zwischengeschalten. Einstellungen wie Skriptlaufzeiten, wieviel Speicher usw. der PHP Prozess verwenden darf, bestimmt der Anbieter.
Die Dateigröße des Backups (letztlich funktioniert das über MySQL Backups) ist begrenzt. Manche Hoster erlauben 20 Megabyte, manche 50 Megabyte und Premiumhoster wie all-inkl. setzten die maximal erlaubte Dateigröße auf 200 Megabyte. 200 Megabyte mögen gigantisch klingen, aber selbst in dieser Größenordnung macht das Exportieren schon keinen Spaß mehr. Auch stellen 200 Megabyte keine große Datenmenge dar. Bei selbstgehosteten Statistik-Tools wie Matomo, online-Shops oder Überwachungs-Software kommt viel mehr zusammen.
3 Lösungswege, um große Datenbanken bei all-inkl.com zu verschieben
Man kann das bei all-inkl auf 3 Wegen lösen. Bei anderen Webhostern sieht das sehr wahrscheinlich anders aus.
1. Lass es den Support machen
Der Support von all-inkl.com wird nicht umsonst gelobt. Er hilft, wo er kann. Also anrufen, die Zugangsdaten zur Authentifizierung bereithalten und das Problem schildern. Es kann sein, dass der Support euch darauf hinweist, dass dieses Problem mit Bordmitteln schnell gelöst werden kann. Und zwar von euch. Da könnte es helfen, sich als etwas technikfremd zu beschreiben.
2. Account-Übertragung bei all-inkl. nutzen
Unter Tools in der KAS Bedienoberfläche werdet ihr so manche Schätzchen entdecken. Hier wählt ihr Account Übertragung (nicht Datenbanken verschieben !).
Lasst bis auf die Felder Quell- und Zieldatenbank alles andere frei, weil ihr innerhalb eures eigenen Accounts kopieren wollt. Erstellt die Zieldatenbank schon vorher. Zu kopierende Datenbank auswählen und Zieldatenbank angeben. Klick auf Verbindungen prüfen.
In Schritt 2 von 3 legt man die zu kopierenden Tabellen fest bzw. bestimmt, welche gegebenenfalls synchronisiert werden sollen (sofern in der Zieldatenbank bereits vorhanden). Es ist meiner Ansicht nach einfacher, später in der Zieldatenbank nicht Benötigtes wieder zu löschen – daher vielleicht alles komplett kopieren.
Den Vorgang mit Synchronisation jetzt starten.
Zuschauen, welche Tabelle gerade durchlaufen wird und wieviel Zeit das in Anspruch nimmt. Abschließend erfolgt eine Auskunft darüber, wieviele Tabellen kopiert wurden. Überprüft das in der Zieldatenbank. Eine Gefahr von Datenverlust besteht nicht, denn die Daten in der Quelldatenbank bleiben erhalten.
3. händisch über die MySQL Kommandozeile
Die meisten Leser werden schon beim Lesen des Wortes „Kommandozeile“ ausgestiegen sein. Aber wenn ich ehrlich sein soll: vor allem für Webgestalter gehört das dazu.
Seid ihr „nur“ ein kleiner Webseitenbetreiber habt ihr hier zwei Alternativen: Entweder bezahlt ihr jemanden, der euch diesen ganzen Technikkram vom Leibe hält oder ihr macht euch schlau.
Viele Webhoster bieten in den niedrigen Tarifen auch keinen Zugriff auf die dafür benötigte SSH Konsole an. Selbst bei all-inkl.com ist die SSH Konsole erst mit einem der teureren Pakete dabei.
Fazit
Das Umziehen bzw. Kopieren von großen Datenbanken ist eigentlich ein einfach zu lösendes Problem. Vor allem das Account-Übertragungs Feature von all-inkl.com erledigt diese Aufgabe zuverlässig, ohne viel Technikverständnis vorauszusetzen. Technikfreunden wird es Spaß bereiten, selbst Hand anzulegen. Die MySQL Konsole machts möglich. Ich kann verstehen, wenn man aus verschiedenen Gründen trotzdem Bammel davor hat. Ihr könnt mich daher ruhig kontaktieren.
Um euch für das Webhosting bei all-inkl.com zu begeistern, gebe ich euch den Link zu deren Tarifübersicht:
Wenn ihr über den Link bestellt, erhalte ich eine kleine Provision. Ihr erfahrt dadurch keine Nachteile, erweist mir aber damit eine Wertschätzung für die hier veröffentlichten Informationen. Wenn ihr wollt, kann ich euch auch hinsichtlich des geeigneten Tarifs und der sinnvollen Organisation eurer Web-Daten beraten.
Danke! Ich musste gerade eine knapp 6GB große Datenbank bei All-Inkl kopieren. Hast Du denen schon mal vorgeschlagen, dass Sie Deinen Tipp in Ihre FAQ aufnehmen? Denn da steht nur das Beispiel über den normalen Ex-/Import.
Selbst mit dem Tipp hat alleine das Kopieren der größen Tabelle fast 480s gedauert.
6 Gigabyte???
Super Anleitung! Danke!