标签:ber 通过 参数 比较 print replace markdown 导致 show
在使用Sqoop将Hive中的数据导出到MySQL的过程中遇到这样的一个异常,是导出到的数据库的max_allowed_packet设置的过小所致。
通过在数据库中执行命令:
mysql> show variables like ‘max_%packet‘;
+--------------------+-----------+
| Variable_name | Value |
+--------------------+-----------+
| max_allowed_packet | 268435456 |
+--------------------+-----------+
上面是改变之后的值,但是网上多数是说修改my.cnf的时候,这个值直接加到mysqld下面,设置为20M以上的值即可,但是之前使用的配置中已经很高了,通过观察发现query_cache_limit值为1M试着改动该值之后发现max_allowed_packet这个值也有所改动.
max_allowed_packet参数
这个参数为接收的数据包的大小,该值取较小的值可以捕获数据包的异常,以及防止由于数据包过大而导致内存溢出。
query_cache_limit参数
该参数指定了单次查询缓存大小,不宜过大,如果数据比较多的情况下应该适当的加大该参数值,但是一般小数据量的查询不需要设置太大否则造成内存碎片。
Mysql异常Packet for query is too large (14040 > 1024)
标签:ber 通过 参数 比较 print replace markdown 导致 show
原文地址:http://www.cnblogs.com/ydkf85/p/6536165.html