在使用SSH框架做工程时,使用本地数据库没有报错,但是部署到服务器时,读取MYSQL报错:Packet for query is too large
在网上搜索答案后,最终解决方案:
1)在mysql中查询:showVARIABLES like '%max_allowed_packet%';
服务器mysql数据库:
本地mysql数据库:
2)明显服务器上的 max_allowed_packet 值太小,尝试更改 max_allowed_packet 值
在mysql安装目录下找到 my.ini 文件 打开
ctrl+F 查找 max_allowed_packet( 有的文件没有,没有的话增加):
[mysqld]
max_allowed_packet = 20M
3)然后再重启mysql服务就搞定了:
win+R
输入:services.msc
找到 MYSQL 服务右击重新启动即可
4)这里在重启前一直纠结数据库中的数据重启后是否会丢失
网上搜索后说 my.ini 文 件 中有一个配置:default-storage-engine=memory 即使用MEMORY存储引擎,在数据库中建表的时候会默认使用内存模式,重启mysql后数据会丢失
我的配置文件中是 default-storage-engine=INNODB
还是把所有数据库导出 .sql 文件保存了一份,目录下的data文件也保存的了一份,以防万一。
一切顺利并没有出现问题。