MYSQL 8.0 WORKBENCH使用LOAD DATA LOCAL INFILE报错解决方案

问题出现在我需要用LOAD DATA LOCAL INFILE 导入csv文件,路径为D:/xxx/xx/xx.csv时报错,一开始报错找不到文件or文件夹,意思是文件或文件夹必须要在服务器/客户端文件夹下。

搜了一下,这个LOAD DATA LOCAL INFILE需要服务器和客户端都开启本地文件读取,才可以成功运行。

服务端:

进入mysql命令行

输入:

SET GLOBAL local_infile=1;

回车,然后找到服务器的上传文件夹,我的是C:ProgramDataMySQLMySQL Server 8.0Uploads,把要导入的文件放在这里边。

客户端(Workbench 8.0)

右键你的数据库连接,选择【edit the connection】,里边有一个Advanced选项卡,点进去在others框里最后一行添加OPT_LOCAL_INFILE=1

然后LOAD DATA LOCAL INFILE 路径+文件名

路径文件名中,或者用/或者用\,单独用会被转义。

例如:

LOAD DATA LOCAL INFILE ‘C:ProgramDataMySQLMySQL Server 8.0Uploads1.csv’

错误

而应该:

LOAD DATA LOCAL INFILE ‘C:\ProgramData\MySQL\MySQL Server 8.0\Uploads\1.csv’

或者LOAD DATA LOCAL INFILE ‘C:/ProgramData/MySQL/MySQL Server 8.0/Uploads/1.csv’

经验分享 程序员 微信小程序 职场和发展