Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Administration
Administration Forum d'entraide sur l'administration de MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 01/09/2006, 18h30   #1
Membre chevronné
 
Inscription : janvier 2006
Messages : 916
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 916
Points : 733
Points : 733
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.
guidav est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2006, 18h34   #2
Membre éprouvé
 
Avatar de Christophe Charron
 
Homme Christophe Charron
Développeur informatique
Inscription : juillet 2005
Messages : 768
Détails du profil
Informations personnelles :
Nom : Homme Christophe Charron
Âge : 51
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 : 768
Points : 492
Points : 492
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
Pour consulter mon site professionnel, vous pouvez cliquer sur le bouton prévu à cet effet, juste sous la signature .
Christophe Charron est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2006, 18h46   #3
Membre chevronné
 
Inscription : janvier 2006
Messages : 916
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 916
Points : 733
Points : 733
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.
guidav est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2006, 19h03   #4
Rédacteur
 
Avatar de Biglo
 
Inscription : juillet 2002
Messages : 537
Détails du profil
Informations personnelles :
Localisation : France, Moselle (Lorraine)

Informations forums :
Inscription : juillet 2002
Messages : 537
Points : 561
Points : 561
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.
Biglo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2006, 22h10   #5
Membre régulier
 
Avatar de jp_rennes
 
Inscription : mars 2006
Messages : 72
Détails du profil
Informations personnelles :
Âge : 39
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : mars 2006
Messages : 72
Points : 83
Points : 83
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.
jp_rennes est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/09/2006, 10h17   #6
Membre chevronné
 
Inscription : janvier 2006
Messages : 916
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 916
Points : 733
Points : 733
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 ?
guidav est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h40.


 
 
 
 
Partenaires

Hébergement Web