在导出数据 遇到这个错误,
上网搜了下:
ERROR 2013 (HY000): Lost connection to MySQL server during query
#vi /etc/mysq.cnf
[mysqld]
skip-name-resolve
禁止MySQL对外部连接进行DNS解析,使用这一选项可以消除MySQL进行DNS解析的时间。但需要注意,如果开启该选项,则所有远程主机连接授权都要使用IP地址方式,否则MySQL将无法正常处理连接请求!
解决了这个问题
http://hi.baidu.com/ldtrain/blog/item/1c7f87be76c9020119d81f18.html
5.”Lost connection to MySQL server”
在使用mysqldump的时候(尤其是向NFS上备份的时候),很多人都被’mysqldump:Got error:2013: Lost
connection to MySQL server during query when dumping
table’的问题困扰,在Manual中对这个问题有一些简单的说明。
在向NFS上备份的时候,数据的流向是这样的:MySQL
Server端从数据文件中检索出数据,然后分批将数据返回给mysqldump客户端,然后mysqldump将数据写入到NFS上。一般地,向NFS
上写入数据的速度较之Server端检索发送数据的速度要慢得多,这就会导致mysqldump无法及时的接受Server端发送过来的数
据,Server端的数据就会积压在内存中等待发送,这个等待不是无限期的,当Server的等待时间超过net_write_timeout(默认是
60秒)时它就失去了耐心,mysqldump的连接会被断开,同时抛出错误Got error: 2013: Lost connection。
增加net_write_timeout可以解决上述的问题的。在实践中发现,在增大
net_write_timeout后,Server端会消耗更多的内存,有时甚至会导致swap的使用(并不确定是不是修改
net_write_timeout所至)。建议在mysqldump之前修改net_write_timeout为一个较大的值(如1800),在
mysqldump结束后,在将这个值修改到默认的60。
6.其他
Lost connection to MySQL server during query 错误
造成这样的错误原因很多
个人经验认为先试一试这两个参数,大部分都是这个原因引起的:
bind-address = 127.0.0.1
skip-name-resolve
这两个参数任意一个就行。
也就是说遇到2006,2013错误就重新连接一下MySQL。
2. MySQL层面,需要配置一些参数 my.cnf
wait_timeout = x 超时时间
max_allowed_packet = y 最大允许数据量
适当增加x,y的值。
============双行分割线(下面是我的问题)========================================
针对 mysqldump 在向NFS上备份的时候 会出现2013 错误,我就先把数据备份到其他地方,
然后 又 拷贝到NFS上的。(虽然有点土,但是还蛮实用的,而且速度很快)。