我正在运行 mysql,其 max_allowed_packet 为 32 M(33554432)。因为我想动态分配 126M,所以我选择了以下选项
set GLOBAL max_allowed_packet=132120576;
但是show variables like '%max_allowed_packet%';
仍然只显示已经记录的 mysql 会话 32M,而新会话会反映出新值。
max_allowed_packet | 33554432
问题详情:恢复转储文件时,我可以看到源操作挂起,因此我选择了上述选项,但它仍然处于相同状态。我可以动态地进行任何更改并解决问题吗?
答案1
您可以设置来自客户端的 max_allowed_packet,在这方面它不是在服务器上强制执行的,服务器变量实际上是用于复制的。最大值为 1GB。
mysql --max_allowed_packet=512M -p < my_big_dump.sql