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

Best Practices für Backups für MySQL, MariaDB und Galera-Cluster

Vielen Dank an alle, die sich für das Webinar am Dienstag zu Sicherungsstrategien und Best Practices für MySQL-, MariaDB- und Galera-Cluster unter der Leitung von Krzysztof Książek, Senior Support Engineer bei Multiplenines, angemeldet und/oder daran teilgenommen haben. Wenn Sie die Sitzung verpasst haben, sie sich noch einmal ansehen oder durch die Folien blättern möchten, können Sie sie jetzt online ansehen. Sehen Sie sich auch das Transkript der Q&A-Sitzung unten an.

Sehen Sie sich die Aufzeichnung des Webinars an

Ob Sie ein SysAdmin, DBA oder DevOps-Profi sind, der MySQL-, MariaDB- oder Galera-Cluster in der Produktion betreibt, Sie sollten sicherstellen, dass Ihre Backups geplant, ausgeführt und regelmäßig getestet werden. Krzysztof teilte gestern einige seiner wichtigsten Best-Practice-Tipps und Tricks, wie man genau das macht; einschließlich einer Live-Demo mit ClusterControl. Kurz gesagt, diese Webinar-Aufzeichnung zeigt Ihnen die Vor- und Nachteile verschiedener Backup-Optionen und hilft Ihnen, diejenige auszuwählen, die am besten zu Ihrer Umgebung passt.

Viel Spaß beim Sichern!

Fragen &Antworten

F. Können wir die E/A steuern, während wir die Backups mit mysqldump und mysqldumper erstellen (ich habe zuvor nice verwendet, aber es war nicht hilfreich).

A. Theoretisch wäre es möglich, obwohl wir das nicht wirklich getestet haben. Wenn Sie wirklich eine gewisse Drosselung anwenden möchten, sollten Sie sich Cgroups ansehen - es sollte Ihnen helfen, die I/O-Aktivität pro Prozess zu drosseln.

F. Können wir mydumper mit ClusterControl verwenden und ist ClusterControl kostenlose Software?

A. Wir unterstützen es derzeit nicht, aber Sie können es jederzeit manuell verwenden; ClusterControl hindert Sie nicht daran, dieses Tool zu verwenden. Ja, es gibt eine kostenlose Community-Version von ClusterControl, obwohl die Backup-Funktionen Teil der kommerziellen Version sind. Mit der kostenlosen Community-Version können Sie Ihre Datenbank (Cluster) bereitstellen und überwachen sowie Ihre eigenen benutzerdefinierten Datenbankberater entwickeln. Sie haben auch eine einmonatige Testphase, die Ihnen Zugriff auf alle Funktionen von ClusterControl gibt. Alle Details zu den Funktionen finden Sie hier:https://severalnines.com/pricing

F. Kann xtrabackup mit Data-at-Rest-Verschlüsselung arbeiten?

A. Es kann mit verschlüsselten Daten in MySQL oder Percona Server arbeiten – weil sie nur Tablespaces verschlüsseln, die xtrabackup einfach kopiert – es muss nicht auf den Inhalt von Tablespaces zugreifen. MariaDB verschlüsselt nicht nur Tablespaces, sondern beispielsweise auch InnoDB-Redo-Logs, auf die xtrabackup zugreifen muss – daher kann xtrabackup nicht mit Data-at-Rest-Verschlüsselung arbeiten, wie sie in MariaDB implementiert ist. Aus diesem Grund hat die MariaDB Corporation xtrabackup in MariaDB Backup gegabelt. Dieses Tool unterstützt die Verschlüsselung durch MariaDB.

F. Können Sie mydumper für die Point-in-Time-Wiederherstellung verwenden?

A. Ja, es ist möglich. mydumper kann GTID-Daten speichern, sodass Sie die zuletzt angewendete Transaktion identifizieren und als Ausgangspunkt für die Verarbeitung von Binärprotokollen verwenden können.

F. Ist es ein Problem, wenn wir Binärlogs mit xtrabackup mit start-datetime und end-datetime anstelle von start-position und end-position verwenden? Wir erstellen freitags ein vollständiges Backup und jeden zweiten Tag ein inkrementelles Backup. Wenn wir wiederherstellen müssen, nehmen wir die letzten vollständigen und alle inkrementellen Backups und die Binärprotokolle von diesem Tag, beginnend von 00:00 bis JETZT ... könnte es ein Problem mit apply-log geben?

A. Im Allgemeinen sollten Sie --start-datetime oder --end-datetime nicht verwenden, wenn Sie auf das Binärprotokoll in der Datenbank antworten möchten. Es ist nicht granular genug – es hat eine Auflösung von einer Sekunde und es könnten viele Transaktionen in dieser Sekunde stattfinden. Sie können es verwenden, um den Zeitrahmen für die manuelle Suche zu minimieren, aber das ist alles. Wenn Sie Binärlogs wiedergeben möchten, sollten Sie --start-position und --end-position verwenden. Nur dies wird genau definieren, von welchem ​​Ereignis Sie Binlogs wiedergeben und auf welchem ​​Ereignis es endet.

F. Soll ich die Dump-Software auf dem Load Balancer oder einem der MySQL-Knoten ausführen?

A. Normalerweise verwenden Sie es auf MySQL-Knoten. Einige der Tools können genau das tun. Zum Beispiel Xtrabackup – Sie müssen es lokal auf dem Datenbankhost ausführen. Sie können die Ausgabe an einen anderen Speicherort streamen, aber sie muss lokal gestartet werden.

F. Können wir Teilsicherungen mit ClusterControl erstellen? Und wenn ja, wie können wir ein Backup auf einer laufenden Instanz wiederherstellen?

A. Ja, Sie können eine Teilsicherung mit ClusterControl erstellen (Sie können ein separates Schema mit xtrabackup sichern), aber derzeit können Sie keine Teilsicherung auf einer laufenden Instanz wiederherstellen. Dies wird durch die Tatsache verursacht, dass das Schema, das Sie wiederherstellen würden, nicht mit dem Rest des Clusters konsistent ist. Um es konsistent zu machen, muss der Cluster von dem Knoten gebootet werden, auf dem Sie eine Sicherung wiederherstellen. Technisch gesehen läuft der Knoten also die ganze Zeit, aber es ist eine ziemlich schwere und invasive Operation. Dies wird sich in der nächsten Version von ClusterControl ändern, in der Sie Backups auf einem separaten Host wiederherstellen können. Von diesem Host aus könnten Sie dann den Inhalt eines wiederhergestellten Schemas mit mysqldump (oder mydumper) ausgeben und es auf einem Produktionscluster wiederherstellen.

F. Können Sie bitte den mysqldumper-Befehl teilen?

A. Es ist ziemlich schwierig, diese Frage zu beantworten, ohne die Dokumentation zu kopieren und einzufügen, daher denken wir, dass es am besten ist, wenn wir Sie auf die Dokumentation verweisen:https://github.com/maxbube/mydumper/tree/ master/docs

Sehen Sie sich die Aufzeichnung des Webinars an

Zugehöriges Whitepaper The DevOps Guide to Database Backups for MySQL and MariaDBDieses Whitepaper behandelt die beiden beliebtesten Sicherungsdienstprogramme, die für MySQL und MariaDB verfügbar sind, nämlich mysqldump und Percona XtraBackup.Download