Fast alle Websites speichern ihre Daten in einer Datenbank (meist MySQL, manchmal PostgreSQL), die in derselben Maschine lebt. Das funktioniert, aber wenn die Maschine ausfällt, fällt alles aus; wenn die Festplatte voll ist, ist sie für beide voll; und die Kopien der Datenbank hängen davon ab, dass jemand sie macht. Eine verwaltete Datenbank ist eine Datenbank, die Amazon für Sie installiert, aktualisiert, täglich sichert und überwacht, auf einer separaten Maschine, die Sie nicht sehen. Lightsail bietet sie zum festen Monatspreis an, genau wie seine Maschinen.
Diese Anleitung erstellt eine, verbindet die Website damit und erklärt, wie Sie die Daten umziehen. Wenn Ihre Website klein ist und eine einzige Maschine mehr als genug ist, ist das nicht zwingend; wenn die Website wichtig ist, gehört es zu den besten Entscheidungen, die Sie treffen können.
Bevor Sie anfangen: was die Begriffe bedeuten
- Datenbank
- Dort speichert die Website ihre Daten: Benutzer, Bestellungen, Texte. Die Website liest und schreibt sie ständig.
- MySQL und PostgreSQL
- Die beiden meistgenutzten Datenbanksysteme für Websites. WordPress und die meisten Shops verwenden MySQL (oder seinen Verwandten MariaDB).
- Verwaltete Datenbank
- Eine Datenbank, die der Anbieter für Sie installiert und pflegt, auf einer Maschine, die Sie nicht verwalten. Sie benutzen sie nur.
- Endpunkt (Endpoint)
- Die Adresse, mit der sich Ihre Website verbindet, um mit der Datenbank zu sprechen. Sie ersetzt das „localhost“ aus der Zeit, als sie auf derselben Maschine lag.
- Master-Benutzer
- Der Hauptbenutzer der Datenbank mit allen Rechten. Sein Passwort wählen Sie selbst, oder Lightsail erzeugt es.
- Öffentlicher Modus
- Ob die Datenbank Verbindungen aus dem Internet annimmt. Standardmäßig aus, und so sollte es bleiben: Nur Ihre Lightsail-Maschinen in derselben Region sollen sie erreichen.
- Dump
- Eine Datei mit dem gesamten Inhalt einer Datenbank, um sie von einem Ort an einen anderen zu bringen.
Schritt für Schritt
Erstellen Sie die Datenbank
In der Lightsail-Konsole, Registerkarte Datenbanken, Datenbank erstellen. Wählen Sie dieselbe Region wie Ihre Maschine, die Engine (MySQL für WordPress und die meisten anderen; PostgreSQL, wenn Ihre Anwendung es verlangt) und die empfohlene Version. Lassen Sie Lightsail das Master-Passwort erzeugen oder vergeben Sie ein eigenes, langes. Wählen Sie für den Anfang den kleinsten Plan, es sei denn, Sie wissen, dass Sie mehr brauchen. Name:
bd-web. Erstellen. Es dauert einige Minuten, bis sie verfügbar ist.Notieren Sie die Verbindungsdaten
Öffnen Sie die Datenbank, Registerkarte Verbinden. Sie sehen den Endpunkt (eine lange Adresse, die auf
rds.amazonaws.comendet), den Port (3306 bei MySQL, 5432 bei PostgreSQL), den Master-Benutzer und einen Button zum Anzeigen des Passworts. Lassen Sie den öffentlichen Modus deaktiviert: Ihre Lightsail-Maschine erreicht sie auch ohne ihn, weil beide in derselben Region liegen.Prüfen Sie die Verbindung von der Maschine aus
Öffnen Sie das Browser-Terminal Ihrer Maschine und testen Sie (MySQL):
mysql -h TU-PUNTO-DE-ENLACE -u USUARIO -pGeben Sie das Passwort ein, wenn es verlangt wird. Wenn Sie hineinkommen und die Eingabeaufforderung
mysql>sehen, funktioniert die Verbindung. Geben Sieexitein. Existiert der Befehlmysqlnicht, installieren Sie den Client (sudo apt install mysql-clientunter Ubuntu oder Debian).Kopieren Sie die Daten aus der bisherigen Datenbank in die neue
Wenn die Website bereits Daten in der lokalen Datenbank hat, versetzen Sie die Website kurz in den Wartungsmodus und exportieren Sie sie:
mysqldump -u root -p nombre_bd > copia.sql mysql -h TU-PUNTO-DE-ENLACE -u USUARIO -p -e "CREATE DATABASE nombre_bd" mysql -h TU-PUNTO-DE-ENLACE -u USUARIO -p nombre_bd < copia.sqlAuf einer Bitnami-Maschine (WordPress von Lightsail) ist der lokale Benutzer
root, und sein Passwort steht in der Dateibitnami_application_passwordoder in der Konfiguration der Anwendung. Der Export dauert je nach Größe; bei einer normalen Website Sekunden.Ändern Sie die Konfiguration der Website
Bearbeiten Sie die Konfigurationsdatei Ihrer Anwendung und ändern Sie den Datenbankserver von
localhostauf den Endpunkt sowie Benutzer und Passwort auf die der verwalteten Datenbank. Bei WordPress ist daswp-config.php: die ZeilenDB_HOST,DB_USERundDB_PASSWORD. Speichern Sie und öffnen Sie die Website: Sie muss wie zuvor funktionieren. Beenden Sie den Wartungsmodus.Halten Sie die lokale Datenbank an und prüfen Sie die Kopien
Wenn die Website einige Tage mit der neuen Datenbank läuft, halten Sie den Datenbankdienst der Maschine an (
sudo systemctl disable --now mysqloder der Bitnami-Befehl), um Arbeitsspeicher freizugeben. In der verwalteten Datenbank, Registerkarte Snapshots: Lightsail erstellt täglich automatische Kopien; zusätzlich können Sie vor wichtigen Änderungen eine manuelle erstellen. Und werfen Sie ab und zu einen Blick auf die Registerkarte Metriken: Gehen CPU oder Verbindungen ans Limit, ist es Zeit für einen größeren Plan, was bei Datenbanken tatsächlich mit einem Button geht.
Was schiefgehen kann
Die Website meldet „Fehler beim Aufbau einer Datenbankverbindung“
Prüfen Sie Endpunkt, Benutzer und Passwort in der Konfiguration Buchstabe für Buchstabe. Danach, ob Maschine und Datenbank in derselben Region liegen. Und ob die Datenbank innerhalb des Servers existiert (das CREATE DATABASE aus Schritt 4).
Ich möchte mich von meinem Computer aus mit einem grafischen Programm verbinden
Dafür müssen Sie den öffentlichen Modus aktivieren, der die Datenbank zum Internet hin öffnet (nur durch das Passwort geschützt). Tun Sie das nur für die Zeit, in der Sie es brauchen, und deaktivieren Sie ihn danach wieder, oder verbinden Sie sich über die Maschine mit einem SSH-Tunnel.
Die Website ist langsamer als vorher
Jetzt liegt die Datenbank auf einer anderen Maschine, und jede Abfrage geht über das Netzwerk, auch wenn es innerhalb desselben Rechenzentrums ist. Normalerweise merkt man das nicht; wenn doch, stellt die Website zu viele Abfragen: Ein Cache-Plugin löst das meist.
Es kostet mehr, als die Datenbank in der Maschine zu haben
Ja: Es ist ein zusätzlicher Dienst. Was Sie dafür bekommen: Sie fällt nicht zusammen mit der Website aus, hat tägliche Kopien, ohne dass jemand daran denken muss, und Sie können wachsen, ohne etwas neu zu installieren. Für eine Website, die Geld einbringt, lohnt es sich in der Regel.
In Simplio
In Simplio erscheinen die Datenbanken von Lightsail und RDS neben Ihren Maschinen, mit Status, kopierbereitem Endpunkt, den Kopien mit Datum und den Metriken. Sie erstellen einen Snapshot mit einem Button, und wer die Berechtigung hat, kann sie sehen, ohne etwas ändern zu können. Wird eine geplante Kopie nicht erstellt oder geht die Datenbank ans Limit, erhalten Sie eine E-Mail.
Dasselbe, in AWS und in Simplio
| In der AWS-Konsole | In Simplio | |
|---|---|---|
| Status und Kopien der Datenbank sehen | In Lightsail anmelden, Registerkarte für Registerkarte | Die Datenbank neben ihren Maschinen, mit Status, Kopien und Metriken auf einer Karte |
| Vor einer Änderung eine Kopie erstellen | Registerkarte Snapshots, erstellen, benennen | Snapshot-Button: 1 Klick |
| Erfahren, wenn sie ans Limit geht | Auf die Registerkarte Metriken schauen | Hinweis per E-Mail, wenn CPU oder Verbindungen in die Höhe schießen oder eine Kopie fehlt |