MySQL: Erweiterte Nutzung
Wie Sie MySQL-Daten konfigurieren, optimieren, exportieren oder importieren
👋 Willkommen in der Stackhero-Dokumentation!
Stackhero bietet eine einsatzbereite MySQL-Cloud-Lösung, die zahlreiche Vorteile bietet, darunter:
- Unbegrenzte Verbindungen und Übertragungen.
- phpMyAdmin Web-UI inklusive.
- Mühelose Updates mit nur einem Klick.
- Optimale Performance und robuste Sicherheit durch eine private und dedizierte VM.
Sparen Sie Zeit und vereinfachen Sie Ihr Leben: Es dauert nur 5 Minuten, um die MySQL-Cloud-Hosting-Lösung von Stackhero auszuprobieren!
Konfiguration der maximalen MySQL-Verbindungen
Bei Stackhero gibt es keine fest codierte Begrenzung für die Anzahl gleichzeitiger Verbindungen, die Ihr MySQL-Server verarbeiten kann. Sie haben die Flexibilität, diesen Parameter direkt über Ihr Stackhero-Dashboard an die Anforderungen Ihrer Anwendung anzupassen.
Auch wenn es verlockend sein mag, diesen Wert möglichst hoch anzusetzen, empfiehlt es sich, ein sinnvolles Limit zu wählen. Jede offene Verbindung verbraucht Arbeitsspeicher (RAM), daher kann ein zu hoher Wert unnötigen Druck auf Ihre Instanz ausüben und Ihre Datenbank potenziell instabil machen.
MySQL-Optimierung für InnoDB- oder MyISAM-Engines
Wenn Ihre Datenbank auf der InnoDB-Storage-Engine basiert, können Sie im Stackhero-Dashboard die Option "InnoDB Optimizations" aktivieren, um die Performance zu steigern.
Ebenso kann die Aktivierung der Option "MyISAM Optimizations" die Leistung verbessern, falls Ihre Datenbank die MyISAM-Storage-Engine verwendet.
Falls Sie nicht sicher sind, welche Storage-Engine Ihre Datenbank nutzt oder welche Optimierungsoption Sie wählen sollten, ist es in der Regel unproblematisch, diese Optionen standardmäßig zu aktivieren. Sie können sie jederzeit später anhand Ihrer Workload oder Ressourcennutzung feinjustieren.
Verwendung der MySQL-Kommandozeilentools (mysql, mysqldump, etc.)
MySQL-Kommandozeilentools wie mysql und mysqldump sind äußerst hilfreich für Aufgaben wie das Importieren und Exportieren von Daten.
Eine einfache Möglichkeit, auf diese Tools zuzugreifen, besteht darin, sie innerhalb eines Docker-Containers auszuführen. So bleibt Ihre lokale Umgebung sauber und Sie vermeiden manuelle Installationen.
Wenn Docker nicht Teil Ihres Workflows ist, ist das absolut kein Problem. Schauen Sie sich Code-Hero auf Stackhero an. Diese browserbasierte Entwicklungsplattform ermöglicht es Ihnen, direkt im Browser zu arbeiten, ohne lokal etwas installieren zu müssen. Weitere Informationen und einen schnellen Einstieg finden Sie unter Code-Hero auf Stackhero.
Um mit Docker zu starten, können Sie einen MySQL-Container mit folgendem Befehl ausführen:
docker run -it -v $(pwd):/mnt mysql:<MYSQL_VERSION> /bin/bash
Ersetzen Sie
<MYSQL_VERSION>durch die benötigte Version. Wenn Sie beispielsweise MySQL8.0.36-0auf Stackhero verwenden, geben Sie8.0.36an (ohne das-0am Ende).
Sobald Ihr Container läuft, können Sie Ihre Verbindung mit folgendem Befehl testen:
mysql -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT>
Ihr aktuelles Verzeichnis wird dabei als /mnt im Container eingebunden (dank des Arguments $(pwd):/mnt). Diese Konfiguration erleichtert den Dateiaustausch zwischen Ihrem Rechner und dem Container. Möchten Sie beispielsweise eine Datenbank auf Ihrem Rechner sichern, verwenden Sie:
mysqldump -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT> <DATABASE> > /mnt/<DATABASE>.sql
MySQL-Datenbank-Dump erstellen
Um ein Backup (oder einen "Dump") Ihrer Datenbank zu erstellen, können Sie das Tool mysqldump direkt von Ihrem Rechner aus verwenden. (Siehe vorherigen Abschnitt, falls Sie es lieber in Docker ausführen möchten.)
MySQL-Datenbank auf Ihren Rechner exportieren
Um eine Datenbank von Ihrer Stackhero-Instanz auf Ihren Rechner zu exportieren, führen Sie folgenden Befehl aus:
mysqldump -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT> <DATABASE> > <DATABASE>.sql
Ersetzen Sie <XXXXXX>.stackhero-network.com, <PORT> und <DATABASE> durch die tatsächlichen Angaben Ihrer Instanz. Nach Ausführung des Befehls werden Sie nach dem Root-Passwort gefragt. Das Tool mysqldump speichert dann Ihre Datenbanktabellen in einer Datei namens <DATABASE>.sql.
MySQL-Datenbank auf Ihren Server importieren
Um eine Datenbank von Ihrem Rechner in Ihre Stackhero-Instanz zu importieren, verwenden Sie diesen Befehl:
mysql -u root -p -h <XXXXXX>.stackhero-network.com -P <PORT> <DATABASE> < yourDump.sql
Denken Sie daran, yourDump.sql durch den tatsächlichen Dateinamen der zu importierenden SQL-Datei zu ersetzen.