我正在尝试在sql中导入csv文件,请找到以下代码:
LOAD DATA INFILE'C:\ ProgramData \ MySQL \ MySQL Server 8.0 \ Uploads \ Assignment \ Auto.csv'INTO TABLE分配。Auto
以','结尾的字段
'\ r \ n'终止的行
忽略1行;
它给了我错误:
错误代码:1290。MySQL服务器正在使用--secure-file-priv选项运行,因此它无法执行此语句0.016秒
然后我尝试使用关键字LOCAL(如某些解决方案中所述),但它给了我错误:
错误代码:1148。此MySQL版本0.000 sec不允许使用命令
由于我找到了许多解决方案,因此我在会话中使用以下命令手动检查了该变量的值:
类似于“ 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” 有人可以告诉我这里的问题是什么,我该如何解决。
答案 0 :(得分:0)
如果要使用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的同一台计算机上?
答案 1 :(得分:0)
plt.plot(org_y, color = 'red', label = 'Real Tesla Stock Price')
plt.plot(predicted_y, color = 'blue', label = 'Predicted Tesla Stock Price')
plt.title('Tesla Stock Price Prediction')
plt.xlabel('Time')
plt.ylabel('Tesla Stock Price')
plt.legend()
plt.show()
此命令将显示路径,例如
SHOW VARIABLES LIKE "secure_file_priv";
将文件放在上传的同一路径中 还要检查两个路径中的反斜杠。如果不同,请更改代码。 我做了两个步骤,并在MySQL 8中解决了这个问题。