【问题标题】:mysql can we change maximum default JSON column length without changing maximum packet size?mysql 我们可以在不更改最大数据包大小的情况下更改最大默认 JSON 列长度吗?
【发布时间】:2018-04-14 16:19:24
【问题描述】:

我读到 here 最大允许 1 GB 的 json。

我们能否以某种方式更改此默认行为以将此 MAX 限制减少到几 MB 或具有 json 数据类型的特定表列中的任何其他值?

【问题讨论】:

    标签: mysql mysql-json


    【解决方案1】:

    Max JSON column length in MySQL 中所述,JSON 字段的最大长度由max_paquet_size 系统变量控制。

    如文档https://dev.mysql.com/doc/refman/5.5/en/packet-too-large.html 中所述,您可以通过添加来更改此设置

    [mysqld]
    max_allowed_packet=<xx>
    

    在您的 my.ini~/.my.cnf 文件中。别忘了重启服务!

    【讨论】:

    • 我希望这仅适用于 JSON 数据类型,而不是全部
    • @maverick Derlin 已经解释了什么是可能的。你真正想做什么?如果你想限制单个表中Json文档的大小,限制类型的最大大小不是一个好的解决方案。如果数据库不允许您指定最大 field 大小,则必须找到其他方法来执行此操作,例如使用触发器
    猜你喜欢
    • 2015-05-17
    • 2012-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多