Bonjour,
je suis sous oracle 10GR2 et je voulais savoir si il y avait un moyen de savoir quand il fallait rebuilder un index?
Merci d'avance
Bonjour,
je suis sous oracle 10GR2 et je voulais savoir si il y avait un moyen de savoir quand il fallait rebuilder un index?
Merci d'avance
C'est une bonne question
La réponse serait : en faisant unEnsuite analyser la vue user_indexes (qui contient juste 1 ligne avec le dernier index que tu as analysé). Cet article en parle
Code : Sélectionner tout - Visualiser dans une fenêtre à part analyze index <index_name> compute statistics;
Par contre il me semble que les avis divergent sur les critères requis pour affirmer que le rebuild est nécessaire ...
Certains disent même qu'il est très rare qu'un index nécessite un rebuild, cf cet article
La théorie, c'est quand on sait tout mais que rien ne fonctionne.
La pratique, c'est quand tout fonctionne mais que personne ne sait pourquoi.
Ici, nous avons réuni théorie et pratique : Rien ne fonctionne ... et personne ne sait pourquoi !
Réplication de base avec Postgresql : http://scheu.developpez.com/tutoriel.../log-shipping/
Merci Scheu pour ces informations![]()
J'ai lu sur le site ask Tom que les rebuild sur les indexes devaient rester exceptionnels (après avoir supprimé bcp de données d'une table par exemple).
Pour défragmenter tes indexes, tu peux préférer le coalesce.
Effectivement un index n'a besoin d'être reconstruit que lors de beaucoup de modification de la table concernée (modif de colonnes ou autres), surtout avec des ordres LDD , de ce fait en 10g / 11g le rebuild est vraiment rare..
Pour évaluer si tu a besoin de faire un rebuild ou non, tu peu utiliser la commande analyze, mais tu peut également te servir du package
DBMS.STATS_GATHER_INDEX_STATS (....)
Par contre le coalesce ne fait rien au niveau des Index, son rôle est de rassembler les segments non contigus et non alloués. Le gain en terme d'espace après avoir lancé la commande est très faible.
La plupart du temps cette commande est utilisé pour les TableSpace dans le but de rassembler les segments non alloués.
Bonne journée,
Après avoir supprimer énormément de lignes dans une table comment faire pour alléger le tablespace qui contient la table? et à ce moment il est donc nécessaire de faire un rebuild des indexes alors?
Partager