簡體   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