Skip to Content

Was ist mysqlpump?

Was ist mysqlpump?

Das mysqlpump-Dienstprogramm wurde mit MySQL 5.7 eingeführt und ist eine schnellere Alternative zum älteren mysqldump-Dienstprogramm, das in früheren Versionen verfügbar ist. Obwohl es über ähnliche Funktionen wie mysqldump verfügt, wird das Dienstprogramm mysqlpump verwendet, um mithilfe von Parallelität ein Backup großer Datenbanken zu erstellen, das im älteren Dienstprogramm mysqldump nicht verfügbar ist. Es kann Backups der gesamten Datenbank oder nur einige ausgewählte Objekte erfordern.

Was ist mysqlpump?

Mysqlpump wurde in MySQL 5.7 eingeführt und ist ein Client-Dienstprogramm, das logische Backups durchführt, bei denen eine Reihe von SQL-Anweisungen erstellt wird, die ausgeführt werden können, um das ursprüngliche Datenbankobjekt wiederherzustellen. Es löst das Problem von langsamen Backups in mysqldump über die Unterstützung von Parallelität und Multithreading. Einige Datenbanken enthalten Terabyte an Daten, sodass der Export von Daten in eine einfache Textdatei zu lange dauern kann. Das Dienstprogramm mysqlpump verwendet mehrere Threads parallel, um Daten viel schneller in eine Textdatei zu übertragen. Da es vor Jahren eingeführt wurde, haben die MySQL-Datenbankentwickler in den letzten Jahren Verbesserungen vorgenommen, um ein stabileres mysqlpump-Dienstprogramm und mehr Optionen anzubieten. Obwohl es schneller ist, verfügt das mysqlpump-Dienstprogramm nicht über alle in mysqldump verfügbaren Optionen, sodass es nur verwendet wird, wenn Administratoren einen schnellen Export einer MySQL-Datenbank und seiner Daten benötigen.

Installation von mysqlpump

Wenn Sie MySQL 5.7 oder höher haben, haben Sie bereits Zugriff auf mysqlpump. Das Dienstprogramm wird mit der MySQL-Datenbankengine ausgeliefert, sodass keine Installation erforderlich ist. Wenn Sie eine frühere Version von MySQL haben, können Sie mysqlpump nicht verwenden, aber mysqldump ist eine praktikable Alternative.

Unabhängig davon, ob Sie MySQL unter Windows oder Linux verwenden, ist das Dienstprogramm mysqlpump mit der MySQL-Datenbankengine verfügbar. Sie können sie verwenden, indem Sie das Befehlszeilen-Dienstprogramm in Windows oder Linux öffnen und „mysqlpump“ mit den zahlreichen Parameteroptionen eingeben, um die Art und Weise anzupassen, wie das Dienstprogramm Daten exportiert.

Grundlegende Verwendung und Beispiele für mysqlpump

Wenn MySQL auf Ihrem Server installiert ist, können Sie über die Befehlszeile auf mysqlpump zugreifen. Öffnen Sie die Befehlszeile in Windows oder Linux und Sie können ein Datenbankschema mit dem folgenden Befehl exportieren:

mysqlpump --all-databases --user=root --password > full_backup.sql

Der obige Befehl exportiert alle Datenbankschemata in die Datei full_backup.sql. Der Benutzername und das Passwort, die Sie verwenden, müssen Zugriff auf die Datenbanken haben, die Sie exportieren möchten. Stellen Sie also sicher, dass Sie über ein Konto mit hohen Berechtigungen verfügen, wenn Sie das Dienstprogramm mysqlpump verwenden.

Wenn Sie bereits bei MySQL authentifiziert sind, können Sie auch Datenbankschemata ohne Angabe eines Benutzernamens und Passworts löschen:

mysqlpump --all-databases > full_backup.sql

Wenn Sie eine einzelne Datenbank lieber ablegen möchten, können Sie den folgenden Befehl verwenden:

mysqlpump myDB

Der obige Befehl exportiert das Datenbankschema und seine Daten für myDB. Sie können mehrere Datenbanken exportieren, indem Sie jeden Datenbanknamen durch ein Leerzeichen trennen.

Administratoren möchten gelegentlich nur bestimmte Tabellen in eine Datenbank exportieren. Die Ausgabe von Tabellendaten mit mysqlpump kann mit dem folgenden Befehl durchgeführt werden:

mysqlpump myDB Customer Order

Im obigen Beispiel exportiert die mysqlpump-Anweisung die Kunden- und Bestelltabellen aus der myDB-Datenbank. Beachten Sie, dass die Tabellennamen durch ein Leerzeichen getrennt sind.

Unternehmensadministratoren arbeiten mit Differential- und inkrementellen Backups, um jedes Mal kein vollständiges Backup zu erstellen. Differenzielle Backups enthalten alle Daten, die seit dem letzten vollständigen Backup geändert wurden. Ein inkrementelles Backup speichert alle Daten, die seit dem letzten Backup geändert wurden, entweder inkrementell oder vollständig. Diese beiden Backup-Typen sind mit mysqlpump nicht möglich, sodass das Dienstprogramm nur zum vollständigen oder teilweisen Backup von Datenbanken und ihren Objekten verwendet werden kann.

Erweiterte Nutzung von mysqlpump

Das Dienstprogramm mysqlpump bietet einige Optionen für eine erweiterte Nutzung. Der erste ist die komprimierte Ausgabe. Bei großen Datenbanken reduziert die Verwendung von komprimiertem Output die Menge an Laufwerkskapazität, die zum Speichern von Backup-Dateien erforderlich ist. Dies ist besonders in Unternehmensumgebungen nützlich, in denen mehrere große Dateien den ganzen Monat über für vollständige Backups gespeichert werden.

Sie müssen bei der Verwendung von mysqlpump einen Kompressionsalgorithmus angeben. Sie können LZ4 verwenden, das hauptsächlich für Geschwindigkeit verwendet wird. Der zlib-Algorithmus ist bei Administratoren, die gzip oder den zlib-Wrapper verwenden, beliebter. In diesem Beispiel wird der zlib-Algorithmus verwendet, um eine gzip-Datei auszugeben:

mysqlpump --compress --compress-output=zlib myDB > myDB_compressed.sql.gzip

Um konform zu bleiben, müssen gespeicherte Backups verschlüsselt werden. Daten im Ruhezustand, d. h. sie müssen auf einem Laufwerk gespeichert werden, müssen verschlüsselt werden, wenn es sich um sensible personenbezogene Daten (PII), Finanzdaten oder andere Daten handelt, die den Compliance-Vorschriften unterliegen. In diesem Beispiel wird der mysqlpump-Befehl gepaspelt und verwendet OpenSSL, um verschlüsselte Ausgaben zu erstellen:

mysqlpump --all-databases | openssl  enc -aes-256-cbc -k yourpassword > backup.xb.enc

Ein Aspekt von mysqlpump, der es für Administratoren vorteilhaft macht, ist die Fähigkeit, Tabellen und Datenbanken parallel zu löschen, was bedeutet, dass es mehrere Computerprozesse zum Exportieren von Daten verwenden kann. Stellen Sie sich parallele Deponien als mehrere Exporte vor, die gleichzeitig stattfinden, anstatt darauf zu warten, dass jedes Objekt nacheinander abgeschlossen wird. Durch die Verwendung paralleler Verarbeitung beschleunigen Administratoren das Backup-Verfahren.

Um Parallelität mit mysqlpump zu verwenden, müssen Sie die Anzahl der Threads definieren, die während des Exports verwendet werden. Die Standardeinstellung ist zwei, aber Sie können mehr definieren. Die folgende Aussage verwendet vier Threads, um zwei Tabellen – Kunde und Bestellung – aus der myDB-Datenbank zu exportieren:

Mysqlpump -default-parallelism=4 myDB Customer Order > full_backup.sql

mysqlpump versus mysqldump

Die Parallelitätsoption in mysqlpump ist in mysqldump nicht verfügbar, sodass Administratoren mit mysqlpump schnellere Backup-Geschwindigkeiten erhalten. Der Vorteil von mysqlpump sind schnellere Backups in einer großen Unternehmensumgebung. Anstatt mehrere Minuten für die Durchführung eines Backups zu benötigen, könnte die Parallelität in mysqlpump die Zeit, die für die Sicherung von Daten benötigt wird, auf mehrere Minuten verkürzen.

Nicht jede Option in mysqldump ist in der neueren mysqlpump verfügbar, und Sie müssen mindestens MySQL 5.7 installiert haben, um sie zu verwenden. Beim Import wird keine Parallelität verwendet, sodass Sie nicht den Vorteil haben, dass Sie Daten schnell importieren können. Administratoren können alternative Dienstprogramme zum Importieren von Daten verwenden.

Fazit

Backups sind ein wesentlicher Bestandteil der Datenbankverwaltung, und das mysqlpump-Dienstprogramm beschleunigt den Prozess viel schneller. Für schnelle Backups einer gesamten Datenbank oder einiger Objekte in einer Datenbank exportiert mysqlpump Schemata und Daten, verschlüsselt und komprimiert sie und verwendet mehrere Threads mit Parallelität. Verwenden Sie sie immer, wenn Sie ein vollständiges Backup einer Datenbank erstellen oder mehrere Tabellen exportieren müssen.

04/2024
Disaster Recovery for MySQL with FlashArray
Detailed guidance for choosing a data-protection and disaster-recovery solution for MySQL databases with Pure Storage FlashArray.
White Paper
24 Seiten
KONTAKTIEREN SIE UNS
Fragen, Kommentare?

Haben Sie eine Frage oder einen Kommentar zu Produkten oder Zertifizierungen von Pure?  Wir helfen Ihnen gerne!

Termin für Demo vereinbaren

Vereinbaren Sie einen Termin für eine Live-Demo und sehen Sie selbst, wie Pure Ihnen helfen kann, Ihre Daten in überzeugende Ergebnisse zu verwandeln. 

Rufen Sie uns an: +49 89 26200662
Presse:
 pr@purestorage.com

 

Pure Storage Germany GmbH

Mies-van-der-Rohe-Straße 6

80807 München

Deutschland

info@purestorage.com

SCHLIESSEN
Ihr Browser wird nicht mehr unterstützt!

Ältere Browser stellen häufig ein Sicherheitsrisiko dar. Um die bestmögliche Erfahrung bei der Nutzung unserer Website zu ermöglichen, führen Sie bitte ein Update auf einen dieser aktuellen Browser durch.