Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Der richtige Weg, um ein PHP/MySQL-Setup zu spiegeln

Es gibt hauptsächlich zwei Möglichkeiten, Ihre MySQL-Datenbanken zu sichern:Cold-Backup (statisch/offline) und Hot-Backup (dynamisch/online).

1 Verwenden Sie ein crontab-Skript, um Ihre Datenbank jeden Tag/Woche/Monat usw. zu sichern. Wir nennen es kaltes Backup. Das Skript könnte so aussehen:

!#/bin/sh
mysqldump -usample_name -S/tmp/sample.sock --databases db1 db2 > db_backup_time.sql

Sie finden das Handbuch von mysqldump hier . Eigentlich geht es im ganzen Kapitel 6 um Datenbanksicherung und -wiederherstellung. Danach erhalten Sie jeden Tag den Spiegel Ihrer Daten (z. B. 6 Uhr morgens).

2 Verwendung von mysql Replikationslösungen (Master-Slave-Struktur) für die Online-Sicherung. Alle Abfragen auf dem Master, die zu Datenänderungen führen, werden auch auf dem Slave durchgeführt.

Vergleich:

Grundsätzlich ist Cold Backup einfacher. Aber wenn schlimme Dinge passieren, kann die erste Methode die Daten nur bis zu dem Zeitpunkt wiederherstellen, an dem Sie den Spiegel löschen. Mit Hot Backup und dem mysqldump-Tool können Sie die Daten jederzeit wiederherstellen.

Nach meiner Erfahrung setzen wir diese beiden Methoden immer zusammen:

  1. schreib jeden Morgen an den Spiegel, und
  2. Bauen Sie einen Slave der Master-DB auf einer anderen physischen Maschine.

das wäre sicher.