Von Mysqldump generierte Datei, die kleiner ist als die Datenbank

Von Mysqldump generierte Datei, die kleiner ist als die Datenbank

Meine Datenbank ist 250 MB groß und die Dump-Größe beträgt 82 MB. Ich verwende das neueste MariaDB. Führen Sie diesen Befehl aus:

mysqldump -u user -p database > t.sql

Antwort1

  • Der Dump enthält INDEXesaußer dem nichts anderes PRIMARY KEY.
  • Der Dump umfasst keinen „freien Speicherplatz“ in den Festplattendateien.
  • Der Dump ist Text, nicht binär. Beispielsweise BIGINTnimmt a 8 Bytes in der Datei ein, aber wenn der Wert beispielsweise „1“ ist, nimmt es 2 Bytes im Dump ein: „...,1,...“ (die Zahl plus eines der Kommas).
  • Andererseits werden einige Zahlen, Zeichenfolgen, Daten usw.mehrPlatz im Mülleimer.
  • Eine leere Tabelle benötigt mindestens etwa 24 KB auf der Festplatte, aber nur ein paar Hundert Bytes (hauptsächlich für CREATE TABLE) im Dump.
  • Der Dump ist eine Textdatei. Sehen Sie sich einen Teil davon an (über „mehr“ oder „weniger“ oder so ähnlich).

Ihre Schrumpfung von 3:1 ist also durchaus machbar. Und eine Ausdehnung von 2:1 ist möglich.

verwandte Informationen