【MySQL】Error 3948和Error 2068 或 导入数据出现Errcode: 2
Error 3948和Error 2068
mysql使用load data local infile导入数据Error 3948和Error 2068
尝试用mac的terminal登陆mysql导入本地数据,文件比较大,先后遇到了Error 3948和Error 2068两个报错。
Error 3948
ERROR 3948 (42000): Loading local data is disabled; this must be enabled on both the client and server sides,以下解决方法是针对全局变量local_infile是OFF的情况,具体步骤如下:
登陆mysql,输入show global variables like ‘local_infile’; 显示 Value=OFF
输入set global local_infile=1;把这个值变为 ON
exit退出mysql,再重新登陆,再次检查全局变量local_infile的状态,已经变为ON。
完成上述步骤,我用load data local infile又出现了Error2068,ERROR 2068 (HY000): LOAD DATA LOCAL INFILE file request rejected due to restrictions on access.
解决方法是需要以mysql -u 用户名 -p --local-infile的命令登陆,如:
mysql -u root -p --local-infile
即可正常使用命令,如load csv文件到yourtable:
load data local infile '/Users/yourname/path/to/yourdoc/doc.csv ’ into table yourtable fields terminated by ‘,’;
mysql导入数据出现Errcode: 2 - No such file or directory错误信息
在导入数据出现这个错误一般是因为地址里面的斜杠使用错误。比如下面
load data local infile ‘D:\road.txt’into table roadcd fields terminated by ‘\t’;
我参考许多资料,这里的地址都是使用单斜杠,但我却出现下面的错误信息:
oad.txt’ not found (Errcode: 2 - No such file or directory)
如果你和我们错误信息一样的话,那就把单斜杠(\)改为双斜杠(\\)试试;
load data local infile 'D:\road.txt’into table roadcd fields terminated by ‘\t’;
这样的话就OK了,数据成功导入。
记住路径不能有中文!!!