【发布时间】:2012-02-07 13:59:37
【问题描述】:
我的应用程序通过 IMAP 下载邮件并将它们存储在 MySQL 数据库中。早些时候,我支持最大 10 MB 的邮件大小,因此存储邮件内容的“mediumtext”列就足够了。现在我需要支持最大 30MB 的邮件。所以我将列的数据类型更改为“大文本”。昨天存储了一封大小为 25 MB 的邮件。之后,每当我执行 mysqldump 命令时,它都会抛出错误:
mysqldump:错误 2020:在第 3369 行转储表“ib_mailbox_backup”时,数据包大于“max_allowed_packet”字节第 3369 行包含 25 MB 邮件。
在 MySQL 配置中,我将“max_allowed_packet”从 64M 增加到 512M,但仍然失败并出现相同的错误。在运行 MySQL 服务器的同一台机器上执行 mysqldump 命令。我该如何解决这个问题?
【问题讨论】:
-
"第 3369 行包含 25 MB 的邮件。"你是怎么知道第 3369 行的大小的?