Arbeiten mit MySQL Datenbanken
TYPO3 und die meisten anderen CMS nutzen eine MySQL Datenbank. Hier sind alle Informationen zur Arbeit mit MySQL in unseren Hosting Tarifen.
Allgemeine Information
Für den Zugang zur Datenbank sind folgende Parameter erforderlich:
- der Datenbanknutzer
- der Datenbankname
- der Datenbankserver (Host)
- der Server Port (3306)
- das Passwort für die Datenbank
Der Datenbanknutzer und der Datenbankname sind bei uns identisch und haben das Format db123456_789
Datenbankserver
Der MySQL Server läuft auf dem gleichen Server wie der Webserver (Apache), die Daten müssen daher zwischen den Servern nicht über das Netzwerk übertragen werden.
Als Server (Host) wird die IP Adresse 127.0.0.3 verwendet.
MySQL Versionen
Aktuell setzen wir MySQL 5.6 ein.
Die Größe der Datenbank ist nicht durch die Größe des Hosting Pakets limitiert. Es sollte jedoch darauf geachtet werden, dass Datenbanken nicht zu groß werden, da sonst die Performance der Webseite leidet und ein Backup/Restore lange dauern kann. Des Weiteren kann bei einem Backup auf dem Webspace dieser volllaufen und dadurch die Funktion der Website beeinträchtigt werden.
Ein direkter Zugriff von externen Rechnern aus auf die Datenbanken ist aus Sicherheitsgründen nicht möglich. Bei Bedarf ist eine Verbindung über einen SSH-Tunnel möglich.
Export und Import von Datenbanken
Prinzipiell kann man Datenbanken zwar auch über PHPMyAdmin exportieren/importieren, aber gerade bei größeren Datenbanken stößt man schnell an Grenzen (PHP-Scriptlaufzeit oder Memorylimit).
Melden Sie sich mit Ihrem SSH-Benutzer an der Shell an. Unter Windows können Sie dazu das kostenlose Programm Putty verwenden, unter MacOS/Linux geht das direkt auf der Shell. Ihre SSH-Zugangsdaten finden Sie in Ihrem Kundenmenü [Konfiguration › SSH-Zugang (Shell)].
Datenbank in Datei exportieren
Der Export einer Datenbank erfolgt am sichersten direkt auf der Shell über den Befehl mysqldump.
Einen Export der Datenbank erstellen Sie mit dem Befehl
mysqldump --opt -h 127.0.0.3 -u db12345_678 -p db12345_678 > dateiname.sql
Der Parameter -h definiert dabei den Datenbank-Host (127.0.0.3).
Ersetzen Sie in diesem Befehl db12345_678 mit dem Namen Ihrer Datenbank. Nach drücken der Eingabe-Taste wird dann das Passwort der Datenbank abgefragt. Alle diese Daten finden Sie in Ihrem Kundenmenü, das Passwort für die Datenbank können Sie auch der Konfiguration Ihrer Website entnehmen.
Datenbank aus Datei importieren
Der Import einer Datenbank erfolgt am sichersten direkt auf der Shell über den Befehl mysql.
Eine Datenbank importieren Sie mit dem Befehl
mysql -h 127.0.0.3 -u db12345_678 -p db12345_678 < dateiname.sql
Der Parameter -h definiert dabei den Datenbank-Host (127.0.0.3).
Als "Eingabequelle" wird in diesem Beispiel die Datei "dateiname.sql" verwendet, die zuvor per mysqldump erstellt wurde.
Ersetzen Sie in diesem Befehl db12345_678 mit dem Namen Ihrer Datenbank. Nach drücken der Eingabe-Taste wird dann noch das Datenbank-Passwort abgefragt. Alle diese Daten finden Sie in Ihrem Kundenmenü, das Passwort für die Datenbank können Sie auch der Konfiguration Ihrer Website entnehmen.
Externer Zugriff auf Datenbanken
WICHTIG: Aus Sicherheitsgründen ist ein Zugriff von externen Systemen auf die Datenbanken ausschließlich über einen SSH-Tunnel möglich.
In den folgenden Beispielen verwenden wir einen Domainnamen als Hostnamen. Sollten Sie damit Probleme haben, eine Verbindung aufzubauen, verwenden Sie die IP-Adresse des Servers.
Die IP-Adresse können Sie in Ihrem Kundenmenü einsehen [SSH Zugang (Shell) › Zahnräder › Öffnen].
SSH Tunnel aufbauen mit PuTTY
Zur Einrichten eines SSH Tunnels befolgen Sie bitte die folgenden Schritte:
1. Normale SSH Verbindung (mit PuTTY) einrichten (ergänzende Videoanleitung)
2. SSH Tunnel einrichten
Nun gehen Sie unter Category auf "Tunnels". Dort geben Sie unter "Source Port" die Zahl "3306" ein und unter "Destination" die "127.0.0.3:3306". Bestätigen Sie das Ganze mit einem Klick auf "Add". Setzen Sie zwei Häckchen bei "Port forwarding".
3. Einstellungen speichern
Nun gehen Sie wieder zur Category "Session" und geben dort unter dem Text "Saved Sessions" einen Namen für ihre Session ein. Mit einem Klick auf Save haben Sie die Einstellungen für die nächste Verbindung gesichert und können diese durch Markieren des vorher erstellten Namens und einen Klick auf "Load" wieder herstellen.
Direkter Zugriff auf eine Datenbank mit "MySQL Workbench"
Es ist auch möglich, mit externen Programmen direkt per SSH Tunnel auf die Datenbanken zuzugreifen. Mögliche Programme wären z.B. "MySQL Workbench" (Windows, MacOS, Linux) oder "Sequel Pro" (MacOS).
Für das folgende Beispiel nutzen wir die Windows-Version von "MySQL Workbench".
2. Vergeben Sie einen beliebigen Namen bei „Connection Name“.
Bei „Connection Method“ wählen Sie „Standard TCP/IP over SSH“.
Als „SSH-Hostnname“ können Sie den Domainnamen verwenden, alternativ verwenden Sie die IP-Adresse des Servers.
Den „SSH Username“ finden Sie in Ihrem Kundenmenü im Bereich „SSH Zugang (Shell)“. Sollten Sie das Passwort nicht mehr kennen, müssten Sie dort ein neues vergeben.
Klicken Sie bei „SSH Password“ auf „Store in Vault“ und geben dann das SSH-Passwort ein.
Der „MySQL Hostname“ ist 127.0.0.3, der „MySQL Server Port“ ist 3306.
Als Username geben Sie den Datenbankbenutzernamen ein, den Sie in Ihrem Kundenmenü finden.
Das Passwort für die Datenbank geben Sie ein, indem Sie auf „Store in Vault“ klicken.
Sollten Sie das Datenbank-Passwort nicht mehr kennen, können Sie es evtl. In der LocalConfiguration.php der TYPO3-Installation auslesen (oder einer Konfigurationsdatei eines anderen Systems, falls Sie nicht mit TYPO3 arbeiten).
Falls Sie das Datenbankpasswort nicht kennen, müssten Sie in Ihrem Kundenmenü ein neues vergeben und dieses dann auch in der Konfigurationsdatei anpassen.
Um zu prüfen, ob die Verbindung hergestellt werden kann, können Sie auf „Test Connection" klicken. Wenn alles in Ordnung ist, klicken Sie abschließend auf „OK“.
Für die Nutzung und Bedienung von „MySQL Workbench“ verweisen wir auf die Dokumentation des Programms.