使用以下命令通过MySQL命令行设置max_allowed_packet什么区别:
set global max_allowed_packet=100000000;
并通过编辑MySQL my.ini(Win)或my.cnf(Linux)configuration并将下面的代码放置在[mysqld] :
max_allowed_packet=100M
set global max_allowed_packet = 1000000000
这将max_allowed_packet设置为10亿字节或1 GB。
max_allowed_packet=100M
这将其设置为104857600字节或100 MiB。
假设你的额外零是无意识的,通过命令行和configuration设置的唯一区别是configuration文件支持使用JEDEC二进制前缀的速记。 另外,服务器重新启动时, set global将丢失。
另一个主要区别是,如果在my.cnf(或my.ini)中设置variables,则max_allowed_packet的设置将在mysql重新启动后存活。
另外,如果你在全局设置这个variables,那么设置会话variables也是有意义的,特别是在会话需要的时候。
呃,我刚刚读了hobodave的回答。 更清楚的答案。 我给他+1