load data local infile ERROR 2 file not found

自作多情 提交于 2019-12-08 15:24:25

问题


I've been ramming my face against this sql error for about 45 minutes, and I have a feeling it's going to be something silly.

I'm trying to load a .txt file into my database, which is on a server elsewhere. I'm using putty on windows 7.

The sql call I am using is the following: LOAD DATA LOCAL INFILE "C:/Users/Sam/Desktop/students_data.txt" INTO TABLE students;

The response I get is ERROR 2 (HYOOO): File 'C:/Users/Sam/Desktop/students_data.txt' not found (Errcode:2)

If anyone could shed some light on this that'd be extravagant. I already tried switching the / to \ and using single quotes, etc., but nothing seems to work. The file path is copied by shift+clicking the actual file and pasting it.


回答1:


I have found a solution. First delete the word LOCAL from the sql statement. Second - place your file into MySQL DATA folder usually - bin/mysql/msql5.5.8/data/and your DB with which you are working. It worked for me. You might want to check your MAX_FILE upload number in php.ini file if file is large.




回答2:


Removing the word LOCAL seemed to work for me; try it out!




回答3:


I had this problem too, then I read this:

The file name must be given as a literal string. On Windows, specify backslashes in path names as forward slashes or doubled backslashes

(from http://dev.mysql.com/doc/refman/5.1/en/load-data.html)

I did use the LOCAL keyword, but escaped the file path like this: str_replace('\\','/',$file), then it worked like a charm!




回答4:


Had this too and solved it by using cmd.exe and found that the filename was mistakenly in the form filename.txt.txt and fixed it.




回答5:


just replace "\" by "/" as the path directory before the filename.txt in (""). it will be better if u just keep the file in mysql data folder and do the thing i mentioned above.it will definitely work.




回答6:


Sorry my previous answer is wrong.

In my case, I connect to a proxy, not the real physical mysql instance, so of course it could not get my local file.

To solve this, figure out the true physical mysql instance IP, connect it directly. You need help from the DBA.



来源:https://stackoverflow.com/questions/7623984/load-data-local-infile-error-2-file-not-found

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!