我正在将数据库迁移到使用Google Cloud SQL,以前max_allowed_packet为20M。
目前,max_allowed_packet的Google Cloud SQL默认值为1M。
有没有办法将此变量增加到 20M?我已经尝试了以下方法:
set global max_allowed_packet = 20971520;
其中返回:
错误代码:1621。会话变量"max_allowed_packet"是只读的。使用"设置全局"分配值
然后:
set global max_allowed_packet = 20971520;
这将返回错误:
错误代码:1227。访问被拒绝;您需要(至少一个)超级权限才能执行此操作
提前感谢您的帮助!
要在 Google Cloud SQL 上更改您的max_allowed_packet,请在云控制台上转到您的实例概述,单击编辑并查找页面底部的 MySQL 标志部分.max_allow_packet 是您可以在那里设置的标志之一。设置所需的值,然后保存/确认。
现在,您可以通过在开发者控制台中编辑实例来自行设置实例。
所有可设置的标志都记录在这里:https://cloud.google.com/sql/docs/mysql-flags
就我而言,我无法更新max_allowed_packet
设置,因为我有一个 sql_mode=TRADITIONAL
标志,它期望该值是 1024 的倍数。