Comment créer un index sur une grande table de production MySQL sans verrouillage de table
Contexte du problème :
Créer un index sur une grande table MySQL peut être une tâche ardue, en particulier dans un environnement de production où un accès ininterrompu est crucial. Les instructions CREATE INDEX traditionnelles peuvent entraîner un verrouillage complet de la table, bloquant toutes les opérations simultanées.
Considérations sur la version MySQL :
Approche des maîtres circulaires :
Pour les versions MySQL antérieures à 5.6, une approche efficace est la technique des maîtres circulaires :
Percona's Outil pt-online-schema-change :
Cet outil automatise l'approche des maîtres circulaires en :
Considérations AWS RDS :
Pour les bases de données MySQL hébergées sur le RDS d'Amazon, la fonctionnalité « Read Replica Promotion » peut être utilisée pour faciliter les modifications de schéma sans verrouillage de table. Cela implique d'apporter des modifications à un esclave en lecture seule, puis de le promouvoir pour qu'il devienne le nouveau maître.
Techniques alternatives :
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3