`

MySQL-- set-variable=max_allowed_packet

阅读更多

当一个MySQL客户或mysqld服务器得到一个比max_allowed_packet个字节长的包,它发出一个Packet   too   large错误并终止连接。

通常通过MySQL的"load data local infile"语句将一个文本文件中的内容导入到数据库中,
这样速度会很快,但今天发现如果文本的大小超过1M时,出现异常:“Packets larger than max_allowed_packet are not allowed”

MySQL的一个系统参数:max_allowed_packet,其默认值为1048576(1M),
查询:show VARIABLES like '%max_allowed_packet%';
修改此变量的值:MySQL安装目录下的my.ini文件中的[mysqld]段中的"max_allowed_packet = 1M",如更改为4M(如果没有这行内容,增加一行),保存,重起MySQL服务。现在可以load大于1M的文件了


-----------------------


修改你的   my.cnf   /   my.ini   文件
在里面的   [mysqld]   节中加入  

set-variable=max_allowed_packet=8M

例:

[mysqld]    
basedir=D:/mysql
    #     MySQL安装目录     ::     一定要用“/”来表示路径,因“\”是MySQL中转义符
datadir=D:/mysql/data
    #     MySQL数据库目录    
#bind-address=192.168.0.2
    #     绑定的IP地址     未使用
#port=3306  
    #     所用的TCP/IP端口     未定义     默认为     3306      
#language=D:/mysql/share/your     language     directory            
    #     返回错误信息所用的语言     未使用     默认为English    
#slow     query     log#=
    #     记录SQL操作日志     未使用    
#tmpdir#=
    #     临时目录             未定义    
#set-variable=key_buffer=16M
    #     索引块缓冲大小为16M     未定义     默认为8M  
set-variable=max_allowed_packet=8M
    #     设置最大包       这就是你所要加上的

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics