Mysql
 sql >> Base de données >  >> RDS >> Mysql

Accélération de la table MyISAM en lecture seule

Au lieu de décompresser et de recompresser la table d'historique :si vous souhaitez accéder à une seule table pour l'historique, vous pouvez utiliser une table de fusion pour combiner les tables d'historique compressées en lecture seule.

Ainsi, en supposant que vous ayez une table active et les tables d'historique compressées avec la même structure de table, vous pouvez utiliser le schéma suivant :

Les tableaux :

compressed_month_1
compressed_month_2
active_month

Créer un tableau de fusion :

create table history_merge like active_month;
alter table history_merge 
    ENGINE=MRG_MyISAM 
    union (compressed_month_1,compressed_month_2);

Après un mois, compressez le active_month table et renommez-la en compressed_month_3 . Maintenant, les tables sont :

compressed_month_1
compressed_month_2
compressed_month_3
active_month

et vous pouvez mettre à jour la table d'historique

alter table history_merge 
    union (compressed_month_1, compressed_month_2, compressed_month_3);