mysql加载数据填充可以';无法获取文件的状态错误代码:2

mysql加载数据填充可以';无法获取文件的状态错误代码:2,mysql,load-data-infile,Mysql,Load Data Infile,我已经找遍了所有地方,没有找到解决办法,在这方面有任何帮助都会很好 查询: LOAD DATA INFILE '/Users/name/Desktop/loadIntoDb/loadIntoDB.csv' INTO TABLE `tba`.`tbl_name` FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n' IGNORE 1 LINES ( field1, field2, field3 ) 错误: Can't get stat of

我已经找遍了所有地方,没有找到解决办法,在这方面有任何帮助都会很好

查询:

LOAD DATA INFILE '/Users/name/Desktop/loadIntoDb/loadIntoDB.csv' 
INTO TABLE `tba`.`tbl_name` 
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES
(
field1, field2, field3
)
错误:

Can't get stat of '/Users/name/Desktop/loadIntoDb/loadIntoDB.csv' (Errcode:2)
注:

我正在OSX 10.6.4上运行MySQL查询浏览器,连接到MySQL 5.x

我尝试过的事情:

  • 拖放
  • Chmod 777
  • 放入具有777权限的文件夹 以及拥有777的文件 权限

尝试使用
加载数据本地填充
而不是
加载数据填充


否则,请检查您的目录是否处于活动状态

我遇到了类似的问题。该决议是一个稍微丑陋的黑客,但更容易记住比apparmor的变通办法,前提是你可以“sudo”。首先,我必须将输入文件放在我使用的数据库的mysql子目录中:

sudo cp myfile.txt /var/lib/mysql/mydatabasename
这将进行复制,并将“
root
”保留为文件所有者。进入mysql并使用mydatabasename进行
操作后,我能够使用

LOAD DATA INFILE 'mytabdelimitedtextfile.txt' INTO TABLE mytablename;
使用--local参数将对此有所帮助

示例:mysqlimport--本地databasename file.txt-p

资料来源:
“本地选项使mysqlimport从客户机主机读取数据文件”

为我,将内容复制到/tmp,并将其用作源文件夹。 我使用MariaDB,我的版本不允许使用“LOCAL”修饰符。
有趣的是,对CSV文件夹进行读写访问也不起作用。

在AWS实例的mysql中填充表时,我也遇到了同样的问题

在我的例子中,实例本身包含csv文件

用绝对路径解决了我的问题

下面是MySQL文档中的一行

如果指定了LOCAL,则该文件将由客户端主机上的客户端程序读取并发送到服务器。文件可以作为完整路径名指定其确切位置。如果作为相对路径名给出,则该名称将相对于启动客户端程序的目录进行解释


查看mysql论坛。这里只有一个链接:@spinon尝试了这个,不起作用。它确实提供了与我相同的文件路径。我删除了我所拥有的,然后拖放文件。给我同样的路。当执行时,给了我相同的错误。听起来文件可能不存在:在远程连接的页面上搜索errcode:2,文件在我的本地计算机上,而不是MySQL服务器计算机上。这会有问题吗?是的。如果您正在从远程机器上运行mysql终端,并试图让它获取本地文件,那么它将不起作用,因为远程机器上不存在该路径和文件。这是加载数据本地填充,因为您引导我找到了正确的路径。答案接受完美的答案,我有一个类似的问题,是apparmor,谢谢!:-)答案中缺少的一件事是解释为什么当地人可能会有所帮助。区别在于mysql服务器是在mysql服务器主机上查找文件,还是mysql客户端在其主机上查找文件并将其传递给服务器。我正在向远程mysql服务器传递一个本地路径,但该路径不起作用,本地解决了这个问题。我得到错误
此mysql版本不允许使用该命令
:(不推荐使用的关键字
LOCAL
。可以使用
--LOCAL
启动标志,但这是不明智的。对于可能认为这有用的人来说,这是一个对我有效的解决方案,而不是公认的答案。我使用的是Ubuntu 12.04 LTS和MySQL 5.5.35-0ubuntu0.12.04.1。同样,我也可以通过c在Ubuntu 12.04、MySQL 5.31上绕过这个问题将我的文件的user:group挂起到mysql:mysql