2011-11-10 3 views
0

J'ai besoin de savoir si c'est la bonne façon (ne pas perdre des données écrites lors de la sauvegarde) pour sauvegarder les fichiers binaires?sauvegarde fichiers binaires mysql

1.

LOCK TABLES 
    tbl_0 READ, 
    tbl_1 READ, 
    tbl_2 READ 

FLUSH TABLES WITH READ LOCK 

2.

copy *.frm, *.myd, *.myi files 

3.

UNLOCK TABLES 

Répondre

1

Il ne suffit pas de le faire. Le mieux est de fermer complètement la base de données et de copier tout le contenu du répertoire de données. Alternativement, vous pouvez laisser la base de données en cours d'exécution et prendre un instantané atomique du système de fichiers. Si vous êtes sûr que vous n'utilisez que des tables MyISAM (et que InnoDB est complètement désactivé dans votre système, comme d'autres moteurs), vous POUVEZ potentiellement effectuer un vidage sous un verrou global pris avec "FLUSH TABLES WITH READ LOCK". Cela a un impact sur le système, mais ce n'est pas aussi grave qu'un arrêt.

Notez que si vous avez des tables InnoDB - du tout, présentes n'importe où sur le serveur - alors vous ne pouvez pas faire une sauvegarde de cette façon. "FLUSH TABLES WITH READ LOCK" n'est pas suffisant pour sauvegarder innodb.