Einzelnen Beitrag anzeigen

Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#2

Re: MySQL Überhang Verständnisfrage

  Alt 25. Mai 2007, 09:46
Das ist recht easy: Um schneller zu sein geht MySQL z.B. beim Löschen von Datensätzen nur her, und markiert die Datensätze als gelöscht; reorganisiert aber nicht die Tabelle. Du hast danach also 'Lücken' in der Tabelle, die irgendwann mal wieder aufgefüllt werden können - aber nicht müssen. Ist ähnlich wie die natürliche Fragmentierung auf einem Dateisystem.

Bei einem Optimize werden diese Lücken explizit aufgefüllt und verbrauchen daher dann nicht mehr unnötig Platz.

Wie gesagt: Das ganze hat einfach Geschwindigkeit als Grund, denn wenn die DB bei jedem Löschen die Datenstruktur neu organisieren würde, dann würde das immer ziemlich lange dauern.

Einmal im Monat ein Optimize sollte an und für sich reichen. Mehr ist nicht nötig. Die paar KB / MB die da brachliegen sind in den Zeiten heutiger Plattengrößen eher marginal
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat