📑 Inhaltsverzeichnis
Ob Online-Shop, mobile App, Mitgliedersystem oder Blog — die wertvollsten Daten Ihrer Website (Benutzerpasswörter, Bestellungen, Einstellungen und Inhalte) liegen in der MySQL-Datenbank. Verlieren Sie Ihre Dateien, können Sie den Code neu schreiben; der Verlust der Datenbank verursacht dagegen materiellen und immateriellen Schaden, der sich nicht wiedergutmachen lässt. In diesem Beitrag haben wir die besten Sicherheitseinstellungen und Backup-Strategien für Ihre MySQL-Datenbank zusammengestellt.
1. MySQL-Datenbanksicherheit (Härtungsmaßnahmen)
Ihre Datenbank gegen Angriffe von außen zu schützen ist ebenso wichtig wie sie zu sichern. Setzen Sie diese grundlegenden Schritte um, um Eindringversuche zu verhindern:
Externen Zugriff schließen (Bind Address)
Ein nach außen offener MySQL-Server ist eine große Sicherheitslücke. Um nur Verbindungen von localhost (serverintern) zuzulassen, prüfen Sie die bind-address-Einstellung in Ihrer Datei my.cnf oder mysqld.cnf :
bind-address = 127.0.0.1
Mit dieser Einstellung werden direkte Verbindungsversuche von außerhalb des Servers blockiert.
Fernzugriff für den Root-Benutzer verhindern
Der MySQL-Root-Benutzer hat volle Rechte und ist ein beliebtes Ziel von Brute-Force-Angriffen. Stellen Sie sicher, dass Root sich nur vom Server selbst verbinden kann:
ALTER USER 'root'@'%' IDENTIFIED BY 'CokGucluSifre123!'; -- Nur für Zugriff von localhost: RENAME USER 'root'@'%' TO 'root'@'localhost';
🚨 Ransomware und Datenlecks
In den letzten Jahren durchsuchen automatisierte Bots offene MySQL-Ports (3306) mit schwachen Passwörtern, verschlüsseln die Daten und fordern Lösegeld. Starke Passwörter und die Beschränkung auf lokalen Zugriff senken dieses Risiko erheblich.
2. Die sicherste mysqldump-Backup-Methode
Der gängigste Weg, MySQL-Datenbanken zu sichern, ist der Befehl mysqldump . Bei großen Datenbanken braucht es jedoch die richtigen Parameter, damit die Tabellen während des Backups nicht gesperrt werden:
mysqldump --single-transaction --quick --lock-tables=false -u kullanıcı_adı -p veritabanı_adı > yedek.sql
--single-transaction: ermöglicht das Backup ohne Tabellensperre. Während Ihre Website aktiv ist, stocken die Vorgänge nicht.--quick: schreibt die Daten direkt in die Datei und verhindert so übermäßigen Speicherverbrauch bei großen Datenbanken.
3. Was ist ein inkrementelles MySQL-Backup?
Ist Ihre Datenbank 5 GB oder größer, belastet ein tägliches Vollbackup von Grund auf sowohl die Server-CPU als auch rasch den Speicherplatz.
Ein inkrementelles Backup sichert nur die seit dem letzten Backup geänderten oder neu hinzugekommenen Zeilen. Umgesetzt über die Binary-Log -Technologie von MySQL spart dieses Verfahren bis zu 95 % an Speicherplatz und Servertraffic.
4. Sichere, automatische MySQL-Backups mit Yedekalma
Backups von Hand zu erstellen und zu verwahren ist mühsam und fehleranfällig. Yedekalma sichert Ihre MySQL-Datenbank automatisch und sicher von Ihrem eigenen Server:
- Client-seitige AES-256-Verschlüsselung: Ihr SQL-Datenbank-Backup wird mit AES-256 verschlüsselt, bevor es den Server verlässt.
- Restore-Drill (automatische Prüfung): Jede Woche wird automatisch geprüft, ob die Backups beschädigt sind — ob sich das Archiv öffnen lässt, der Inhalt vollständig ist und die Prüfsumme stimmt.
Häufig gestellte Fragen
Wie sichert man eine MySQL-Datenbank?
Am gängigsten ist der Befehl mysqldump: `mysqldump -u benutzer -p datenbank > backup.sql`. Schreiben Sie das Passwort nicht in die Befehlszeile (es erscheint in der Prozessliste); nutzen Sie stattdessen ~/.my.cnf oder --defaults-extra-file. Für kleine Datenbanken genügt auch der Export-Reiter in phpMyAdmin, bei großen Tabellen droht jedoch ein PHP-Timeout.
Wie oft sollte ein MySQL-Backup erstellt werden?
Der Maßstab ist die Datenmenge, deren Verlust Sie hinnehmen können (RPO). Bei einer statischen Präsentationsseite genügt womöglich ein wöchentliches Backup; bei täglich neuen Inhalten ein tägliches; bei einem Shop mit Bestellungen ein stündliches — denn dort bedeutet eine verlorene Stunde unmittelbar verlorene Bestellungen.
Lässt sich ein inkrementelles Backup für die Datenbank nutzen?
Bei Dateien ja, beim Datenbank-Dump nicht: mysqldump erzeugt bei jedem Lauf den gesamten Datenbestand, und ein halber Dump lässt sich nicht wiederherstellen. Deshalb arbeitet Yedekalma bei Datei- und E-Mail-Komponenten inkrementell, sichert die Datenbank aber JEDES Mal vollständig. Echte inkrementelle Datenbankwiederherstellung erfolgt über binlog-basiertes PITR und ist ein eigenes Thema.
Muss ich mein Datenbank-Passwort mit dem Backup-Dienst teilen?
Nein. Bei Yedekalma erstellt das auf Ihrem eigenen Server laufende PHP-Modul den Dump; MySQL-Benutzername und -Passwort bleiben in der Konfigurationsdatei auf Ihrem Server und werden nie an einen Yedekalma-Server gesendet. Das Panel sieht nur die Metadaten des Backups (Größe, Datum, Prüfsumme).
Überlassen Sie Ihre Datenbanksicherheit nicht dem Zufall
Erstellen Sie Ihren MySQL-Backup-Plan mit Yedekalma in fünf Minuten und bewahren Sie Ihre Daten automatisch in verschlüsseltem Cloud-Speicher auf.
Verwandte Seiten: Datenbank-Backup · inkrementelles Backup · verschlüsseltes Backup
Kostenlos testen