MySQL: Erweiterte Nutzung

Wie Sie MySQL-Daten konfigurieren, optimieren, exportieren oder importieren

👋 Willkommen in der Stackhero-Dokumentation!

Stackhero bietet einen vollständig verwalteten MySQL Cloud Service, der die Bereitstellung und Verwaltung für produktive Workloads vereinfacht:

  • Unbegrenzte Verbindungen und Datenübertragungen.
  • Integrierte phpMyAdmin Web-Oberfläche für eine einfache Datenbankverwaltung.
  • Updates ohne Aufwand dank One-Click-Upgrades.
  • Gleichbleibende Performance und hohe Sicherheit auf einer privaten, dedizierten Infrastruktur.

Mit Stackhero steht Ihnen eine zuverlässige MySQL-Datenbank in wenigen Minuten bereit. Verbringen Sie weniger Zeit mit Einrichtung und Wartung und konzentrieren Sie sich auf die Entwicklung Ihrer Anwendungen. Testen Sie noch heute das MySQL Cloud Hosting auf Stackhero.

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.

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.

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 MySQL 8.0.36-0 auf Stackhero verwenden, geben Sie 8.0.36 an (ohne das -0 am 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

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.)

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.

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.