Menu Content/Inhalt
Home arrow Open Source & Linux arrow Déplacer des tables MySQL ouvertes sans redémarrer le serveur

Gestion de session






Perdu votre mot de passe ?
Pas encore de compte ? Enregistrez-vous
Déplacer des tables MySQL ouvertes sans redémarrer le serveur Convertir en PDF Version imprimable Suggérer par mail
Ecrit par Farzad FARID   
16-05-2006

Si l'on dimensionne mal ses partitions de bases de données, et qu'en plus on n'a pas installé LVM (ou un équivalent comme EVMS), on peut se retrouver à court de place, au risque de planter sa base de données ou ses applications, mais sans toutefois pouvoir se permettre de redémarrer le serveur MySQL !

Heureusement, il y a une astuce pour déplacer des répertoires ou des fichiers de bases MySQL à chaud. Cette astuce ne fonctionne toutefois pas pour les tables InnoDB, mais uniquement pour :

  • les fichiers de descriptions des tables, communs à tous les formats de table, et qui s'appellent *.frm
  • les tables aux format MyISAM ou plus anciens (*.MYD, *.MYI)

Tous ces fichiers sont contenus dans des sous-répertoires portant le nom des bases, par exemple dans "/var/lib/mysql".

Pour déplacer ces fichiers on procède de la façon suivante :

  • Fermeture de toutes les tables ouvertes à déplacer. Cela nécessite bien sûr que les tables ne soient pas réouvertes immédiatement. On utilise la commande "FLUSH TABLE".
  • Vérification que les fichiers ne sont plus utilisés par MySQL, avec l'excellente commande fuser
  • Déplacement des répertoires et fichiers sur une nouvelle partition
  • Remplacement des éléments déplacés par des liens symboliques

mysql -u root -p password mysql

>  FLUSH TABLES base1.sessions, base1.data, base2.sessions.....

cd /var/lib/mysql

fuser base1/* base2/*

mv base1 base2 /data/new-mysql

ln -s /data/new-mysql/base1 .

ln -s /data/new-mysql/base2 .

 

Et le tour est joué.

Dernière mise à jour : ( 28-07-2006 )
 
< Précédent   Suivant >

Flash info

Envie de jouer aux devinettes ?

Vous souvenez-vous de ce jeu auquel on jouait enfant et qui consistait à faire découvrir à un autre le personnage célèbre auquel on pense en 20 questions ?

Aujourd'hui, vous pouvez y jouer contre un ordinateur ! En vous posant une vingtaine de questions, le Grand mage Devinettor va tenter de deviner le personnage auquel vous pensez.
La photographie de ce dernier apparaîtra alors devant vos yeux ébahis !

http://www.devinettor.com/
 
designed by www.madeyourweb.com