|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre chevronné
![]() Inscription : janvier 2006 Messages : 916 ![]() |
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'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. |
|
|
00
|
|
|
#2 |
|
Membre éprouvé
![]() Christophe CharronDéveloppeur informatique Inscription : juillet 2005 Messages : 768 ![]() |
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 |
|
|
00
|
|
|
#3 |
|
Membre chevronné
![]() Inscription : janvier 2006 Messages : 916 ![]() |
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. |
|
|
00
|
|
|
#4 |
![]() Inscription : juillet 2002 Messages : 537 ![]() |
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.
|
|
|
00
|
|
|
#5 |
|
Membre régulier
![]() Inscription : mars 2006 Messages : 72 ![]() |
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. |
|
|
00
|
|
|
#6 |
|
Membre chevronné
![]() Inscription : janvier 2006 Messages : 916 ![]() |
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 ? |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com