Quelle est la meilleure façon de faire des sauvegardes incrémentielles dans MySQL?

StackOverflow https://stackoverflow.com/questions/409046

  •  03-07-2019
  •  | 
  •  

Question

Nous utilisons MySQL version 5.0 et la plupart des tables sont InnoDB. Nous exécutons la réplication sur un serveur esclave. Nous pensons à la sauvegarde quotidienne des fichiers journaux de MySQL.

Questions

  • Existe-t-il un autre moyen d'effectuer une sauvegarde incrémentielle sans utiliser les fichiers journaux?
  • Quelles sont les meilleures pratiques pour les sauvegardes incrémentielles?
Était-ce utile?

La solution

D'après ce que je sais, le journal binaire est le seul moyen d'effectuer des sauvegardes incrémentielles. Vous avez d'autres options si vous souhaitez effectuer des sauvegardes complètes (InnoDB hotcopy), mais incrémentiel signifie que vous devez enregistrer toutes les transactions effectuées.

Vous devez vous demander pourquoi vous sauvegardez des données. Étant donné que vous avez un esclave pour la réplication, je suppose que la sauvegarde sert principalement à restaurer des données en cas de suppression accidentelle?

Je ferais probablement la rotation des journaux toutes les heures et je les sauvegardais. Cela signifie que la restauration laisserait les données au plus d’une heure, et vous pouvez restaurer à tout moment depuis le dernier instantané complet.

Autres conseils

Vous pouvez vider vos schémas régulièrement avec mysqldump, en utilisant toujours le même nom de fichier et le même chemin pour chaque schéma (c'est-à-dire en remplaçant le dernier)

Ensuite, associez-le à n’importe quel outil de sauvegarde prenant en charge la sauvegarde incrémentielle / delta, par exemple, rdiff-backup, duplicity, Duplicati ou Areca Backup. Un exemple tiré de duplicity docs:

  

La duplicité utilisant librsync, les archives incrémentielles sont de l’espace.   efficace et n’enregistre que les parties des fichiers qui ont changé depuis   la dernière sauvegarde

Ainsi, votre première sauvegarde serait la copie compressée du premier vidage complet, et la seconde contiendrait les différences compressées des premier et deuxième vidages, etc. Vous pouvez restaurer le fichier mysqldump à n’importe quel moment, puis restaurer ce fichier dans MySQL.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top