鉴于最大的 max_allowed_packet 只有 1GB,因此使用 LONGBLOB 可能非常危险。
早在 2006 年 8 月,有人问过类似的问题。其中彼得·扎伊采夫说:
http://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html
正如您在理论上看到的那样,它大约为 4GB。
然而,它也受到 max_packet_size 的限制,默认情况下为 16M。
我会非常小心地使用大于 100MB 的 blob。MySQL 将需要在服务器上分配此大小的大约 3 倍的内存用于 blob 处理。
我不是 PostgreSQL DBA,但我不得不冒险提出以下建议: