Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Tamanho de memória permitido de 134217728 bytes esgotado (tentou alocar 4294967296 bytes)


Eu li este relatório de bug aqui:https://bugs.php.net/bug. php?id=51386

Seu problema parece acontecer porque há um longblob ou longtext nas colunas da tabela.

longtext / longblob ter um comprimento máximo de 4294967295 [4 GB] é por isso que o mysqli tenta alocar essa memória para o buffer para garantir que nada seja perdido. Eu sugiro que você use mediumtext (16777215 [16MB] comprimento máximo), isso deve ser suficiente para tudo normalmente.

Atualização: Como esta resposta viu alguma atividade, adiciono esta solução de Phil_1984 (veja comentários)

=> Se você usar $stmt->store_result() você pode usar mysqli com longblob / longtext sem obter o erro.

-

Resposta antiga: Sugiro que você altere a coluna para outro tipo (mediumtext) ou use PDO (acho que não tem esse problema). mas se você quiser manter a coluna como texto longo, você deve mudar sua biblioteca mysql

Citação de PHP Dev: