Eu acho que o tamanho máximo de um campo MySQL TEXT é menor que 2^16 bytes. Usando a codificação UTF-8, isso pode significar ainda menos caracteres. Você pode usar MEDIUMTEXT para 2^24 ou LONGTEXT para 2^32 bytes, veja o Documentos MySQL para detalhes.
Ah, e certifique-se de verificar seu
max_allowed_packet
Tamanho.