Mon objectif est d'identifier (s'il existe) un moyen efficace de déplacer les fichiers d'une partition d'un répertoire vers un autre... et tout cela à chaud (base ouverte).
Ma table (MYISAM) est partitionnée "by range" sur un champ entier et sous-partitionnée "by hash" avec 3 sous-partitions sur un champ CHAR(4)
Les commandes que j'ai identifé sous les suivantes :
Pour revenir à l'état initial
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 ALTER TABLE matable REORGANIZE mapartition INTO (PARTITION mapartition VALUES LESS THAN (maborne) DATA DIRECTORY '/unautrechemin/que/celui/du/my.conf')
Sachant que "maborne" est la borne initialisée à la création de la table.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ALTER TABLE matable REORGANIZE mapartition INTO (PARTITION mapartition VALUES LESS THAN (maborne))
Si vous voulez embarquer les index, il suffit d'ajouter la clause "INDEX DIRECTORY" appropriée...
A terme, je voudrais déplacer ce repository vers un montage sous tmpfs
Malgré que ces commandes soient viables, l'opération s'avère très lente. Il est vrai que les 3 fichiers MYD font ~600MoMais bon... un bon vieux "mv"...
Avez-vous un moyen plus efficace (à chaud) ?
Merci de votre retour![]()
Partager