繁体   English   中英

MySQL-错误2013:查询期间与MySQL服务器的连接断开-Localhost

[英]MySQL - Error 2013: Lost Connection to MySQL server during Query - Localhost

我刚刚在计算机上安装了一个SQL Server,并将数据存储指向另一个非C驱动器。 通过以下方式创建表后,我一直试图将Kaggle数据作为测试导入:

LOAD DATA LOCAL INFILE 'G:\\Extract_large\\user_logs.csv'
INTO TABLE user_logs
fields terminated by ','
enclosed by '"'
lines terminated by '\n'
ignore 1 rows; 

自然地,由于数据相当大,在每次尝试导入期间,我始终会通过Error Code: 2013 Lost connection to MYSQL server during Query 我进行了一些搜索,然后在stackoverflow中遇到了一些其他类似的线程(并非专门针对localhost),这导致我增加了DBMS Connection参数,特别是我设置了以下参数:

DBMS connection Keep-alive interval (in seconds): 10,000
DBMS connection read timeout (in seconds): 200
DBMS connection timeout (in seconds): 10,000

这不能解决问题,因此我进一步编辑了my.ini信息以设置max_allowed_packet=100000M 重新启动服务器后,它仍然无法正常工作。

最后,我尝试在SQL中set global max_allowed_packet=500000000000 再次没有成功。 我有主意...帮助吗?

这是我设法在此主题上找到有用的其他线程: 这里这里这里

注意:我正在运行Windows 7和MySQL 5.7。 该错误似乎发生在30.5或1573.6秒(允许或花费几毫秒)。

根据https://dev.mysql.com/doc/refman/5.7/zh-CN/server-system-variables.html#sysvar_max_allowed_pa​​cket,max_allowed_pa​​cket的最大允许值为1G

我尝试使用MySQL 5.6.31进行测试以将其更改为500G,但是更改被忽略,并且先前的值仍然有效。

还要注意,除了更改服务器端max_allowed_pa​​cket之外,您可能还需要在某些客户端(尤其是mysqlmysqldump更改相同名称的选项。 其他命令行客户端使用的客户端默认值为1GB。

因此,如果您正在使用mysql客户端运行LOAD DATA ,则需要告诉客户端使用更大的数据包大小。

mysql --max_allowed_packet=1073741824 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM