上周,此方法有效,而今天却无效。我没有改变PHP文件。我在此期间所做的全部工作都是在Ubuntu 15.04服务器上运行apt-get update。
我拥有的MySQL语句是:
LOAD DATA INFILE "/var/www/html/uploads/TitleList.csv" INTO TABLE tblLSITitleList FIELDS TERMINATED BY "," OPTIONALLY ENCLOSED BY "\"" IGNORE 5 LINES;
这给出了以下错误:
我尝试了以下解决方案(这是我上周初解决此确切问题的方法:
LOAD DATA INFILE Error Code : 13
我已经检查了apparmor,并且上载文件夹仍然存在。
我也尝试更改各种权限,包括777,但没有任何帮助。
有什么聪明的建议吗?
最佳答案
从文档中:
For security reasons, when reading text files located on the server,
the files must either reside in the database directory or be
readable by all
我建议将您的.csv文件复制到数据库目录,例如
cp TitleList.csv /var/lib/mysql/yourdbname/TitleList.csv
然后
LOAD DATA INFILE 'TitleList.csv' INTO etc ...