lors de la création d'un index, si la table est conséquente, vaut il mieux arrêter le serveur ou non?
lors de la création d'un index, si la table est conséquente, vaut il mieux arrêter le serveur ou non?
Bonjour,
le problème si tu arrête le serveur, c'est que tu ne pourras exécuter ta requete de CREATE INDEX, non ?
je pense que ça répond à ta question, sauf si tu parlais d'un autre serveur que MySQL....
HTH,
En fait je me suis mal exprimé:-), je pensais à l'arrêt de l'appli... Est-ce que la création d'index peut altérer le fonctionnement de l'appli si celle-ci accède en même temps à la table?
Oui, c'est toujours mieux de travailler sur une base offline.
Tu peux en effet créer des index sur une base online sans probleme, mais, en fonction du volume de données à indexer et de la charge qu'inflige l'appli, il se peux que tu es une baisse de perf flagrante durant la création de l'index.
Du coup çelà voudrait il dire qu'il y ait un risque de pertes de données?
Exécuter des taches d'admin sur une base online n'est jamais annodin.
Ce que tu risque selon moi (et prend ce qui suit pour avis consultatif uniquement) :
forte probabilité :
- mettre ton MySQL à genoux pendant les quelques secondes (minutes ?) de création d'index (tjrs en fonction de la charge et du volume)
faible probalité :
- avoir un index cassé et devoir faire un repair table, cette fois-ci offline.
impensable, mais tout peux arriver :
- perdre toutes tes données, t'apercevoir que ton backup était bidon => donc impossibilité de récupérer quoi que ce soit => te faire virer => donc ta femme te quitte => en plus avec ton meilleur ami....![]()
on ne sait jamais...
Si tu veux éviter ce scénario catastrophe, tu peux toujours travailler offline.
MDR!
Merci pour tes remarques en tout cas, vu que c'est que une machine assez balaise, je ne pense pas la mettre à genoux encore que... le dernier serait vraiment appocaliptique :p!
Bon je vais étudier ça, merci.
Met ta base offline c'est un conseil...
Une fois avec un collègue en livraison chez un client, on a mit à jour la base alors qu'un utilisateur y a accédé... Mysql a cru qu'il y avait une erreur et a éffacé toutes les tables chez le client![]()
On avait un backup encore heureux mais bon.... STRESS!!!!!!!!
Partager