mysql - 将数据从txt文件导入mysql工作台-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'(加载数据本地输入)这个词来解决,但这给了我这个错误:
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=1
和local-infile=1
,但似乎没有任何效果。
任何人都可以帮助我吗...
Ps 1:我不能使用向导导入,因为即使它可以工作,它也太慢了
Ps 2:我试图将我的 txt 文件转换为 csv,但它也不起作用。
解决方案
没有LOCAL
,告诉 MySQL 服务器在LOAD DATA INFILE
自己机器的文件系统上查找文件并读取它。
因此,路径和文件必须存在于服务器计算机上。并且,运行 MySQL 服务器的凭据(用户名)必须具有对该文件的读取权限。
您的permission denied
错误提示我 MySQL 服务器无法读取该文件。
推荐阅读
- mysql - 创建mysql存储过程生成db
- xslt - 单个 XSLT when 语句中的多个条件
- java - 为什么?完全 gc 发生在两次次要 gc 之前?
- xamarin - DeviceInformation.FindAllAsync 找不到相同数量的 COM 端口
- c# - 使用授权服务器的 REST API 到 API 身份验证
- python - numpy: linspace 计算生成 nan。如何从两个数组中删除点对?
- assembly - 减少时 DAW 不工作 - 组装
- sql - Oracle 中的 XML 类型
- javascript - jQuery:如何获取表格单元格数据并将其附加到输入字段?
- ruby - 如何在ruby中获得一个短的第n个素数代码