Frage

Ja, ich werde Strace auf beiden laufen ... aber ich würde gerne wissen ...

  • Was macht XtraBackup über RSYNC -AC SRC -Ziel?
  • Was ist so besonders an Xtrabbackup?
  • Wie interagiert Xtrabackup mit MySQLD?
War es hilfreich?

Lösung

rsync ist nur eine brutale Force Byte-byte-Kopie von Daten von Ort zu einem anderen. Sie hätten bis zum letzten RSYNC mehrere RSYNCs ausführen, was sehr schnell ist. Dann würden Sie eine vollständige Abschaltung von MySQL durchführen und ein weiteres RSYNC durchführen.

Xtrabackup ist ein umfassendes Werkzeug, das sich wie RSYNC verhält, aber den Zweck im Leben gerichtet hat. Es kann mit dem Kopieren aller InnoDB -Daten und Tabellenspace beginnen. Es kann interne Kontrollpunkte erstellen und eine InnoDB-Crash-Wiederherstellung durchführen, um eine perfekte Point-in-Zeit-Sicherung zu erhalten. Xtrabackup verfügt außerdem über eine zusätzliche Funktion, mit der inkrementelle Sicherungen erstellt werden können. Ein weiteres zusätzliches Merkmal ist die Erstellung von InnoDB-Protokolldateien, die ebenfalls durch eine In-Place-Absturzwiederherstellung erstellt wurden. Es gibt auch eine Wrapper -Software, die gefrorene Kopien von MyISAM -Tischen bereitstellt.

Beide Methoden sind großartig. XtraBackup implementiert einfach InnoDB -Transaktionsfunktionen in den meisten ersten Kopieren. Xtrabackup erstellt Dateien, die in eine etablierte MySQL -Infrastruktur fallen gelassen werden können. Zu sagen, Xtrabackup bietet instrumentierende Sicherungen und materialisierte, sehr verwendbare InnoDB -Dateien.

Die Verwendung von RSYNC zwingt Sie dazu, den Kopierprozess mehrmals zu verwalten und ihn mit einer MySQL -Abschaltung abzuschließen, um eine Intervention von RSYNC zu erfordern.

Die Verwendung eines übereinander kann eine persönliche Präferenz sein. Eines muss anerkannt werden: Xtrabackup macht Backups, die etwas größer sind, als die Daten, die kopiert wurden. Ich überlasse die Wahl der Methode dem Leser dieser Frage.

Ich bevorzuge RSYNC, weil es Einfachheit des Gebrauchs hat. Ich kann den spezifischen Zeitpunkt vor Beginn des Prozesses bestimmen. Ich habe auch die vollständige Kontrolle darüber, MySQLD zu sperren oder zu verkleinern, wenn eine solche Kontrolle durchgeführt werden kann und in welcher Reihenfolge ich bestimmte, die ich bezeichne .

Beide Backups -Stile haben eines gemeinsam : Mit XtraBackup ist die tatsächliche Punkt-in-Zeit ein bewegendes Ziel, bis der Sicherungsprozess abgeschlossen ist und Sie Xtrabackup vertrauen müssen (Hey 200.000 Downloads bisher. Facebook ist einer der größten Nutzer davon. Es hat viel verdient. vertrauen). Mit anderen Worten, wenn ich mit Mitternacht mit XtraBackup beginne und das Backup bis 2:20 Uhr dauert, dann ist die tatsächliche Spitze der Backup 2:20 Uhr. Die Verwendung von RSYNC hat das gleiche bewegende Zielproblem, da Sie mehrere RSYNCs manuell durchführen und dann feststellen müssen, wann ein "Service MySQL Stop" vor dem letzten RSYNC ausgestellt werden soll.

Diese Methoden unterscheiden sich darin MySQLD muss geschlossen werden Mit der RSYNC -Methode handelt XtraBackup unabhängig von MySQLD. Tatsächlich interagiert XtraBackup nicht sehr viel mit MySQLD, außer wenn er über die Wrapper -Software mit MyISAM -Tischen zu tun hat. Xtrabackup versucht, voll funktionsfähige InnoDB -Daten und Protokolldateien mithilfe von InnoDB Storage Engine -Operationen getrennt und von MySQLD zu unterscheiden.

Das Herunterfahren von MySQL ist für die RSYNC -Methode aus einem sehr großen Grund sehr notwendig: Der InnoDB -Pufferpool kann "schmutzige Seiten" enthalten, die Daten- und Indexseiten (1 Seite = 16 KB) sind, die nicht auf die Festplatte zurückgeschrieben wurden. Die Verwendung von RSYNC fängt die im InnoDB -Pufferpool anhängigen Datenänderungen nicht an. Um die Abschaltung von MySQLD für die endgültige RSYNC zu beschleunigen, führen Sie diesen Befehl bitte aus:

SET GLOBAL innodb_max_dirty_pages_pct = 0;

Dieser Befehl hält die Anzahl der schmutzigen Seiten auf ein Minimum. Dieser Befehl sollte etwa eine Stunde lang ausgeführt werden, bevor Sie die RSYNC -Methode der Sicherung durchführen. Dies könnte auch XtraBackup sogar helfen, obwohl XtraBackup keine MySQL -Abschaltung erfordert.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit dba.stackexchange
scroll top