繁体   English   中英

将数据从txt文件导入到MySQL工作台-Windows

[英]Import data from txt file to mysql workbench - windows

我在.txt文件上有大量数据(例如90.000行和10列,每个“项目”用逗号分隔),我需要找到一种方法将其从txt文件导入到mysql表中。 我做了一些研究,发现以下代码:

LOAD DATA INFILE "/my_path/file.txt" INTO TABLE "table" CHARACTER SET "utf8" FIELDS TERMINATED BY "," LINES TERMINATED BY "\r\n";

但这给了我以下错误:

Error Code: 29. File '/my_path/file.txt' not found (OS errno 13 - Permission denied)    0.000 sec

因此,在进行了更多搜索之后,我发现很多人都遇到了这个问题,但是仅通过添加单词“ LOCAL”(LOAD DATA LOCAL INFILE)就解决了,但这给了我这个错误:

Error Code: 1148. The used command is not allowed with this MySQL version   0.000 sec

(我正在使用MySQL Workbench 8.0)

因此,我尝试在my.ini文件中设置一些全局变量,如secure-file-priv=""loose-local-infile=1local-infile=1 ,但似乎无济于事。

谁能帮我...

Ps 1 :我无法使用向导导入,因为即使它可以正常运行,但速度太慢

Ps 2 :我尝试将txt文件转换为csv,但是它也不起作用。

如果没有LOCAL ,则LOAD DATA INFILE告诉MySQL服务器在其自己计算机的文件系统上查找文件并读取该文件。

因此,路径和文件必须存在于服务器计算机上。 并且,运行MySQL服务器的凭据(用户名)必须对该文件具有读取权限。

您的permission denied错误提示我MySQL服务器无法读取该文件。

OP有两个问题:

a)从权限的角度来看,mysql没有访问输入文件的权限

b)输入文件未正确编码。

解决访问问题并将输入文件编码更正为utf8后,加载即可正常工作。

暂无
暂无

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

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