В MySQL требования к хранилищу для типа данных INT зависят от фактического значения, хранящегося в таблице?
INT
INT всегда использует 4 байта.
BIGINT всегда использует 8.
BIGINT
Если вам не требуется полный диапазон типа INT, вы можете сохранить память, используя один из других целочисленных типов полей:
http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html
Если вы хотите сэкономить место, вы можете сжать свой стол с помощью myisampack .Он также оптимизирует тип и длину поля и может преобразовать столбец из BIGINT в INT.Но ваша таблица становится доступной только для чтения.
http://www.techrepublic.com/article/save-disk-space-by-compressing-mysql-tables/5852557