Может ли MySQL обрабатывать строку длиной 2 миллиона символов в BLOB?
Максимальный размер BLOB
объекта составляет 65535
байт.
Однако, если вы хотите сохранить большие значения, вы можете использовать MEDIUMBLOB
(16,777,215
байт) или LONGBLOB
(4G
байт).
Замечания:
- При использовании набора символов Unicode не все символы используют одинаковое количество байтов и могут потребовать до трех (четырех) байтов на символ.
Тем не мение:
Максимальный размер объекта BLOB или TEXT определяется его типом, но наибольшее значение, которое вы фактически можете передать между клиентом и сервером, определяется объемом доступной памяти и размером буферов связи.
UTF-8 - это то, что я буду помещать туда
Набор символов utf8 в MySQL 5.7 такой же, как и до 5.7, и имеет те же характеристики:
Что такое BLOB?
BLOB - это большой двоичный объект, который может содержать переменное количество данных. Четырьмя типами BLOB являются TINYBLOB, BLOB, MEDIUMBLOB и LONGBLOB. Они отличаются только максимальной длиной значений, которые они могут содержать. Четырьмя типами TEXT являются TINYTEXT, TEXT, MEDIUMTEXT и LONGTEXT. Они соответствуют четырем типам BLOB и имеют одинаковую максимальную длину и требования к хранению. См. Раздел 11.7, «Требования к типу данных для хранения».
...
Максимальный размер объекта BLOB или TEXT определяется его типом, но наибольшее значение, которое вы фактически можете передать между клиентом и сервером, определяется объемом доступной памяти и размером буферов связи. Вы можете изменить размер буфера сообщений, изменив значение переменной max_allowed_packet, но вы должны сделать это как для сервера, так и для вашей клиентской программы.
Источник 11.4.3. Типы BLOB и TEXT:
Требования к хранилищу для строковых типов
В следующей таблице M представляет объявленную длину столбца в символах для недвоичных типов строк и байтов для типов двоичных строк. L представляет фактическую длину в байтах данного строкового значения.
...
На этой странице перечислены типы BLOB и TEXT, а также приведена формула для расчета требуемой памяти, но не указаны разные максимальные размеры. Вот они:
Источник Раздел 11.7 Требования к типу данных: