これはなに
MySQL 5.7のJSON型における最大長を調べたメモです。
MySQL8のことは調べてません。同じだと思いますが当環境はAmazon Auroraです。
JSON型の最大値
ドキュメントによると、だいたいLONGBLOBとLONGTEXTと同じだそうです。
したがって、カラムの領域としては4 GBまで行けそうです。
https://dev.mysql.com/doc/refman/5.7/en/storage-requirements.html#data-types-storage-reqs-json
https://dev.mysql.com/doc/refman/5.7/en/string-type-overview.html
max_allowed_packet
JSON型をINSERTやUPDATEを行う場合は、SQLの最大長であるmax_allowed_packet
に引っかかる場合がほとんどだと思います。
その場合、max_allowed_packet
の最大値である1 GBが現実的な最大値となるでしょう。