Sauvegarde incrémentielle / différentielle MySQL à l'aide de mysqldump


9

Existe-t-il des techniques pour utiliser mysqldump (ou une commande similaire) pour effectuer des sauvegardes incrémentielles ou différentielles pour MySQL?

Réponses:




0

J'utilise des binlogs mais ce n'est pas une solution ultime et j'ai tendance à me fier également aux instantanés.

Il ya deux raisons principales pour cela:

  • Binlogs stocke toutes les modifications. Une semaine de binlogs sera probablement beaucoup plus importante que la différence entre deux instantanés par semaine. Le seul soulagement est que les binlogs ont tendance à bien se comprimer (généralement bien en dessous de 10%).
  • Si vous avez besoin de faire un audit ou de revenir en arrière, la relecture du binlog sur un ancien instantané prendra très longtemps et plus le binlog est grand, plus les risques d'erreur sont importants, vous avez donc besoin d'instantanés réguliers.

J'ai eu un grand nombre de clichés récemment, ils n'étaient ni compressés ni différentiels. J'ai expérimenté avec diff et j'ai constaté que même avec des options telles que pas de contexte, les différences résultantes étaient plus grandes.

Sans essayer toutes les alternatives, la meilleure chose que j'ai trouvée était rdiff. Cela les a réduits à environ 5% de la taille pour moi et ensuite compressés avec xz dans la zone de 1%.

Bien que les fichiers de signature rdiff ne se compressent pas bien car ce sont des collections de hachage (identiques aux données aléatoires), les compresser les uns contre les autres devrait donner de bons résultats.

Beaucoup de gens n'auront pas besoin d'une telle solution car dans la plupart des cas, en cas de défaillance, ils devront stocker la base de données avec l'image la plus récente et la mettre à jour le plus rapidement possible.

Cependant, si vous avez un système complexe qui nécessite beaucoup de comptabilité, d'audit, de débogage, etc. (des choses plus critiques qu'un blog), le stockage efficace des instantanés devient important.


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.