IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration MySQL Discussion :

Faire une sauvegarde par copie de fichier, est-ce fiable ?


Sujet :

Administration MySQL

  1. #1
    Membre éprouvé

    Inscrit en
    Janvier 2006
    Messages
    969
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 969
    Points : 958
    Points
    958
    Par défaut Faire une sauvegarde par copie de fichier, est-ce fiable ?
    Bonjour à tous

    J'ai mis en place une routine de sauvegarde de ma base qui s'appuie sur la copie de fichier : toutes les nuits, les fichiers .frm, .mdy et .myi sont recopiés sur une autre machine. Ca a l'avantage d'être extrêmement rapide (j'ai des bases de plusieurs centaines de Mo), mais quid de la fiabilité ?

    Dans quelle mesure est-il possible de recharger une sauvegarde en remettant simplement les fichiers dans les répertoires originels (avec éventuellement un FLUSH TABLES ? J'ai des tables au format MYISAM et d'autres au format INNODB.

    J'aimerais éviter de faire des dumps, qui coûtent plus de temps machine que des copies par robocopy.

    Merci de vos réponses, en espérant qu'elles serviront à tous.

  2. #2
    Membre confirmé Avatar de Christophe Charron
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    920
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 920
    Points : 606
    Points
    606
    Par défaut
    Bonsoir,
    pourquoi ne pas utiliser mysqldump ? Je ne sais pas s'il est plus gourmand que d'autres, mais une sauvegarde journalière d'une base d'environ 1 Go, sur un super vieux nanard qui à 6 ans, sous W2K avec 128Mo de ram, ne prends pas plus de 3-4 minutes ...
    Cordialement,
    Christophe Charron

  3. #3
    Membre éprouvé

    Inscrit en
    Janvier 2006
    Messages
    969
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 969
    Points : 958
    Points
    958
    Par défaut
    Le problème et que la sauvegarde est pilotée depuis un autre poste, sur lequel mysql n'est pas installé. Il n'est donc pas possible de lancer un mysqldump depuis cette machine.
    D'autre part, la routine de copie fait partie d'un ensemble de routines plus large, dans lesquelles de très nombreux fichiers sont copiés, et c'est toujours gênant de gérer les exceptions.

  4. #4
    Membre éprouvé
    Avatar de Biglo
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 537
    Points : 984
    Points
    984
    Par défaut
    Salut,

    Ton serveur MySQL tourne pendant la sauvegarde ?

    Si c'est le cas, je crois que pour la fiabilité avec les tables InnoDB, c'est rapé Avec MyISAM, ça peut passer. Tu peux regarder le script mysqlhotcopy (en Perl) pour voir comment il place les différentes sécurités (LOCK, ...) lors d'une sauvegarde.

  5. #5
    Membre régulier Avatar de jp_rennes
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mars 2006
    Messages : 72
    Points : 86
    Points
    86
    Par défaut
    En effet, mysqlhotcopy permet une copie à chaud de tes bases de données mais le programme est en perl.
    Si tu ne peux pas utiliser mysqlcopy tu peux continuer avec ta méthode en sachant que ta base, pour des raisons de cohérence, ne doit pas être modifiée pendant la sauvegarde.
    - Soit tu fais un arrêt de la base avant la sauvegarde puis tu relances après
    - Soit tu laisses la base tourner mais tu fais un lock tables avant la sauvegarde ( on autorise les lectures mais pas les éritures). Après la sauvegarde, ne pas oublier de déloquer les tables.

  6. #6
    Membre éprouvé

    Inscrit en
    Janvier 2006
    Messages
    969
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 969
    Points : 958
    Points
    958
    Par défaut
    Merci beaucoup pour vos réponses. Je pense que je vais arrêter ou locker le serveur lors de la sauvegarde avant de copier les fichiers, car je suis sous windows, et donc sans mysqlhotcopy.
    Et comme j'aimerais pouvoir reloader les tables individuellement, autant ne pas utiliser mysqldump qui va me faire une sauvegarde de toute la table. A moins qu'il n'existe un utilitaire pour dumper toutes les tables d'une base en plusieurs fichiers sql ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Faire une sauvegarde complete du disque
    Par baert dans le forum Administration système
    Réponses: 3
    Dernier message: 19/04/2007, 20h29
  2. Faire une sauvegarde automatique ?
    Par Neal Morse dans le forum Langage SQL
    Réponses: 1
    Dernier message: 27/12/2005, 20h29
  3. Comment faire une action, par rapport au temps
    Par Happy dans le forum OpenGL
    Réponses: 5
    Dernier message: 12/11/2005, 14h27
  4. Comment faire une division par 5 avec les decalages
    Par Zaion dans le forum Assembleur
    Réponses: 7
    Dernier message: 05/11/2004, 18h33
  5. batch pour faire une sauvegarde
    Par bibiodp dans le forum Scripts/Batch
    Réponses: 4
    Dernier message: 13/08/2003, 14h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo