MySQL Que signifie « frais généraux » signifie, ce qui est mauvais à ce sujet, et comment y remédier?

StackOverflow https://stackoverflow.com/questions/565997

  •  05-09-2019
  •  | 
  •  

Question

question simple, mais sa me poursuivent pendant un certain temps maintenant ....

ce qui est "frais généraux" dans MySQL, et dois-je être inquiet?

ne cliquant sur "OPTIMIZE" fixer pour de vrai?

Était-ce utile?

La solution

Il semble que la surcharge est temporaire diskspace la base de données utilisée pour exécuter certaines des requêtes, de sorte que vous ne devriez vous inquiéter si cela devient très élevé.

Vous pouvez comparer « Optimisation de la table » avec le Défragmentation de votre disque dur.

Je cite:

  

Chaque base de données, au fil du temps,   exigent une certaine forme d'entretien   le maintenir à un optimal performances   niveau. Purge lignes supprimées,   resequencing, compression, gestion   chemins d'index, défragmenter, etc. est   ce qui est connu sous le nom OPTIMISATION dans mysql   et d'autres termes dans d'autres bases de données.   Par exemple, IBM DB2 / 400 appelle   REORGANISER MEMBRE PHYSIQUES FICHIER.

     

Il est un peu comme changer l'huile dans   votre voiture ou obtenir un tune-up. Tu peux   pensez que vous n'avez pas vraiment, mais par   faire de sorte que votre voiture fonctionne beaucoup mieux,   vous obtenez une meilleure consommation de gaz, etc. Une voiture   qui obtient beaucoup de kilométrage exige   tune-up le plus souvent. Une base de données   obtient une utilisation intensive exige la même chose. Si   vous faites beaucoup de UPDATE et / ou   les opérations de suppression, et surtout si   vos tables ont une longueur variable   colonnes (VARCHAR, TEXT, etc.), vous avez besoin   de garder « er réglé.

Autres conseils

Si vous parlez de la chose qui phpMyAdmin appels overhead, il est la taille réelle d'une table datafile par rapport à la taille idéale du même fichier de données (comme quand juste restauré de la sauvegarde).

Pour des raisons de performance, MySQL ne compacte pas les fichiers de données après la suppression ou les lignes de mises à jour.

Ce overhead est mauvais pour la numérisation de table, i. e. lorsque votre requête a besoin de fonctionner sur toutes les valeurs de la table, il faudra regarder plus d'espace vide.

Vous pouvez vous débarrasser de l'overhead en exécutant OPTIMIZE TABLE qui compacter votre table et index.

Overhead est Data_free d'une table, qui est Le nombre d'octets alloués mais non utilisés. Nous pouvons le trouver par commande SQL AFFICHER TABLE STATUS . Il est l'espace libre dans la taille allouée à votre table.

OPTIMIZE table peut être très problématique. Par exemple, si la table est utilisée en grande partie sur un site.

http://dev.mysql.com/doc/ refman / 5.1 / fr / optimize-table.html

  

Après la suppression d'une grande partie d'une table MyISAM ou archivez ou faire beaucoup de changements à une table MyISAM ou ARCHIVE avec des lignes de longueur variable (tables qui ont VARCHAR, BLOB ou colonnes de texte). lignes supprimées sont maintenues dans une liste, et les opérations INSERT réutilisent anciennes positions de ligne. <

Je crois que je l'ai confirmé ce comportement. Et ce serait certainement très utile en effet.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top