Skip to Content

Qu’est-ce que mysqlpump ?

Qu’est-ce que mysqlpump ?

L’utilitaire mysqlpump a été introduit avec MySQL 5.7 et constitue une alternative plus rapide à l’ancien utilitaire mysqldump disponible dans les versions précédentes. Bien qu'il dispose de fonctionnalités similaires à celles de mysqldump, l'utilitaire mysqlpump est utilisé pour sauvegarder de grandes bases de données à l'aide du parallélisme, qui n'est pas disponible dans l'ancien utilitaire mysqldump. Il peut prendre des sauvegardes de l’ensemble de la base de données ou de quelques objets sélectionnés uniquement.

Qu’est-ce que mysqlpump ?

Introduit dans MySQL 5.7, mysqlpump est un utilitaire client qui effectue des sauvegardes logiques dans lesquelles un ensemble d’instructions SQL est produit et peut être exécuté pour restaurer l’objet de base de données d’origine. Il résout le problème des sauvegardes lentes dans mysqldump grâce à la prise en charge du parallélisme et du multithreading. Certaines bases de données contiennent des téraoctets de données. L’exportation des données vers un fichier texte simple peut donc prendre trop de temps. L’utilitaire mysqlpump utilise plusieurs threads en parallèle pour transférer des données vers un fichier texte beaucoup plus rapidement. Comme il a été introduit il y a des années, les développeurs de bases de données MySQL ont apporté des améliorations ces dernières années pour fournir un utilitaire mysqlpump plus stable et offrir davantage d’options. Même s'il est plus rapide, l'utilitaire mysqlpump ne dispose pas de toutes les options disponibles dans mysqldump. Il n'est donc utilisé que lorsque les administrateurs ont besoin d'une exportation rapide d'une base de données MySQL et de ses données.

Comment installer mysqlpump

Si vous avez MySQL 5.7 ou une version ultérieure, vous avez déjà accès à mysqlpump. L’utilitaire est livré avec le moteur de base de données MySQL, aucune installation n’est donc nécessaire. Si vous avez une version antérieure de MySQL, vous ne pouvez pas utiliser mysqlpump, mais mysqldump est une alternative possible.

Que vous utilisiez MySQL sous Windows ou Linux, l’utilitaire mysqlpump est disponible avec le moteur de base de données MySQL. Vous pouvez l’utiliser en ouvrant l’utilitaire de ligne de commande sous Windows ou Linux et en tapant « mysqlpump » avec les nombreuses options de paramètres pour personnaliser la manière dont l’utilitaire exporte les données.

Utilisation de base et exemples de mysqlpump

Lorsque MySQL est installé sur votre serveur, vous pouvez accéder à mysqlpump depuis la ligne de commande. Ouvrez la ligne de commande sous Windows ou Linux, et vous pouvez exporter un schéma de base de données à l’aide de la commande suivante :

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

La commande ci-dessus exporte tous les schémas de base de données vers le fichier full_backup.sql. Le nom d’utilisateur et le mot de passe que vous utilisez doivent avoir accès aux bases de données que vous souhaitez exporter. Assurez-vous donc d’avoir un compte hautement privilégié lorsque vous utilisez l’utilitaire mysqlpump.

Si vous êtes déjà authentifié dans MySQL , vous pouvez également vider les schémas de base de données sans spécifier de nom d’utilisateur et de mot de passe :

mysqlpump --all-databases > full_backup.sql

Si vous préférez vider une seule base de données, vous pouvez utiliser la commande suivante :

mysqlpump myDB

La commande ci-dessus exporte le schéma de base de données et ses données pour myDB. Vous pouvez exporter plusieurs bases de données en séparant chaque nom de base de données par un espace.

Les administrateurs peuvent parfois souhaiter exporter uniquement des tables spécifiques dans une base de données. Le vidage des données de la table avec mysqlpump peut être effectué à l’aide de la commande suivante :

mysqlpump myDB Customer Order

Dans l’exemple ci-dessus, l’instruction mysqlpump exporte les tables Client et Commande de la base de données myDB. Notez que les noms des tables sont séparés par un espace.

Les administrateurs d’entreprise travaillent avec des sauvegardes différentielles et incrémentielles pour éviter d’effectuer une sauvegarde complète à chaque fois. Les sauvegardes différentielles contiennent toutes les données modifiées depuis la dernière sauvegarde complète. Une sauvegarde incrémentielle stocke toutes les données modifiées depuis la dernière sauvegarde, incrémentielle ou complète. Ces deux types de sauvegarde ne sont pas possibles avec mysqlpump. L’utilitaire ne peut donc être utilisé que pour effectuer une sauvegarde complète ou partielle des bases de données et de leurs objets.

Utilisation avancée de mysqlpump

L’utilitaire mysqlpump offre quelques options d’utilisation avancée. Le premier est la sortie compressée. Pour les bases de données volumineuses, l’utilisation d’une sortie compressée permet de réduire la capacité du disque nécessaire pour stocker les fichiers de sauvegarde. Elle est particulièrement utile dans les environnements d’entreprise où plusieurs fichiers volumineux sont stockés pour des sauvegardes complètes tout au long du mois.

Vous devez spécifier un algorithme de compression lorsque vous utilisez mysqlpump. Vous pouvez utiliser LZ4, qui est principalement utilisé pour la vitesse. L’algorithme zlib est plus populaire auprès des administrateurs qui utilisent gzip ou l’enveloppe zlib. Dans cet exemple, l’algorithme zlib est utilisé pour produire un fichier gzip :

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

Pour rester en conformité, les sauvegardes stockées doivent être chiffrées. Les données au repos, c’est-à-dire stockées sur un disque, doivent être chiffrées lorsqu’il s’agit d’informations sensibles personnellement identifiables (PII), de données financières ou de toute donnée qui relève des réglementations de conformité. Dans cet exemple, la commande mysqlpump est insérée et utilise OpenSSL pour créer une sortie chiffrée :

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

L’un des aspects de mysqlpump qui le rend avantageux pour les administrateurs est sa capacité à vider les tables et les bases de données en parallèle, ce qui signifie qu’il peut utiliser plusieurs processus informatiques pour exporter des données. Considérez les vidages parallèles comme plusieurs exportations qui se produisent simultanément au lieu d’attendre que chaque objet termine un par un. Grâce au traitement parallèle, les administrateurs accélèrent la procédure de sauvegarde.

Pour utiliser le parallélisme avec mysqlpump, vous devez définir le nombre de threads qui seront utilisés pendant l’exportation. La valeur par défaut est deux, mais vous pouvez en définir davantage. L'instruction suivante utilise quatre threads pour exporter deux tables, Client et Commande, depuis la base de données myDB :

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

mysqlpump vs. mysqldump

L’option de parallélisme dans mysqlpump n’est pas disponible dans mysqldump, ce qui permet aux administrateurs d’obtenir des vitesses de sauvegarde plus rapides avec mysqlpump. L’avantage de mysqlpump réside dans des sauvegardes plus rapides dans un environnement d’entreprise de grande envergure. Au lieu de prendre plusieurs minutes pour effectuer une sauvegarde, le parallélisme dans mysqlpump pourrait réduire le temps nécessaire à la sauvegarde des données à plusieurs minutes.

Toutes les options de mysqldump ne sont pas disponibles dans la nouvelle version de mysqlpump, et vous devez avoir installé au moins MySQL 5.7 pour l’utiliser. L’importation n’utilise pas le parallélisme, vous n’avez donc pas l’avantage de la vitesse pour importer des données. Les administrateurs peuvent choisir d’utiliser d’autres utilitaires pour importer des données.

Conclusion

Les sauvegardes jouent un rôle essentiel dans l’administration des bases de données, et l’utilitaire mysqlpump accélère considérablement le processus. Pour des sauvegardes rapides d’une base de données entière ou de quelques objets dans une base de données, mysqlpump exporte les schémas et les données, les chiffre et les compresse, et utilise plusieurs threads avec un parallélisme. Utilisez-la chaque fois que vous avez besoin de créer une sauvegarde complète d’une base de données ou d’exporter plusieurs tables.

CONTACTEZ-NOUS
Des questions, des commentaires ?

Vous avez des questions ou des commentaires concernant des produits ou certifications Pure ?  Nous sommes là pour vous aider.

Planifier une démo

Planifiez une démo en direct et découvrez comment Pure peut vous aider à transformer vos données. 

Tél. : +33 1 89 96 04 00

Services Médias : pr@purestorage.com

 

Pure Storage France

32 rue Guersant

75017 Paris

info@purestorage.com

 

FERMER
Votre navigateur n’est plus pris en charge !

Les anciens navigateurs présentent souvent des risques de sécurité. Pour profiter de la meilleure expérience possible sur notre site, passez à la dernière version de l’un des navigateurs suivants.