Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Was sind die optimalen Varchar-Größen für MySQL?

Um die Frage zu beantworten, verwendet MySql auf der Festplatte 1 + die Größe, die im Feld verwendet wird, um die Daten zu speichern (wenn also die Spalte als varchar(45) deklariert wurde und das Feld "FooBar" wäre, würde es 7 Bytes auf der Festplatte verwenden, es sei denn, Sie verwenden einen Multibyte-Zeichensatz, bei dem 14 Bytes verwendet werden). Wie auch immer Sie Ihre Spalten deklarieren, es wird auf der Speicherseite keinen Unterschied machen (Sie haben angegeben, dass Sie sich Sorgen über die Festplattenoptimierung für eine massive Tabelle machen). Es macht jedoch einen Unterschied in Abfragen, da VARCHARs in CHARs konvertiert werden, wenn MySql eine temporäre Tabelle erstellt (SORT, ORDER usw.) und je mehr Datensätze Sie auf eine einzelne Seite passen, desto weniger Speicher und schneller werden Ihre Tabellenscans sein.