繁体   English   中英

在sql中导入csv文件时出现安全文件专用错误

[英]secure-file-priv error while importing csv file in sql

我正在尝试在sql中导入csv文件,请找到以下代码:

加载数据INFILE'C:\\ ProgramData \\ MySQL \\ MySQL Server 8.0 \\ Uploads \\ Assignment \\ Auto.csv'到表分配。 Auto字段以','终止,'\\ r \\ n'终止,共1行;

它给了我错误:

错误代码:1290。MySQL服务器正在使用--secure-file-priv选项运行,因此它无法执行此语句0.016秒

然后,我尝试使用关键字LOCAL(如某些解决方案中所述),但给了我错误:

错误代码:1148。此MySQL版本0.000秒不允许使用命令

当我找到许多解决方案时,我在会话中使用命令手动检查了此变量的值:

显示变量,例如“ secure_file_priv”;

输出为:

secure_file_priv C:\\ ProgramData \\ MySQL \\ MySQL Server 8.0 \\ Uploads \\

**这是我在上面的加载数据路径中使用的相同位置。

我检查了C:\\ ProgramData \\ MySQL \\ MySQL Server 8.0 \\ my.ini文件,它具有以下详细信息:

安全文件保密。

secure-file-priv =“ C:/ ProgramData / MySQL / MySQL Server 8.0 / Uploads”有人可以告诉我这里的问题是什么,我该如何解决。

如果要使用LOAD DATA LOCAL INFILE … ,则需要将MySQL Server全局变量local_infile为true。

SET GLOBAL local_infile = true;

您还需要将--local-infle选项传递给mysql命令行客户端

mysql --local-infile -hlocalhost -uroot -p

关于安全文件priv错误-您的Auto.csv文件是否在运行MySQL Server的同一台计算机上?

SHOW VARIABLES LIKE "secure_file_priv";

该命令将显示路径,例如

C:/ProgramData/MySQL/MySQL Server 8.0/Uploads/

将文件放在上传文件的同一路径中。还要检查两个路径中的反斜杠。 如果不同,请更改代码。 我做了两个步骤,并在MySQL 8中解决了。

暂无
暂无

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

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