我正在尝试SELECT INTO OUTFILE
而我收到以下错误:
General error: 1 Can't create/write to file '/home/jason/projects/mcif/web/downloads/dump.csv' (Errcode: 13). Failing Query: "
SELECT name
INTO OUTFILE '/home/jason/projects/mcif/web/downloads/dump.csv'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
FROM account a
我知道问题可能是什么:我的MySQL用户无法写入downloads
文件夹。我不知道如何解决这个问题有两个原因:
downloads
文件夹的用户我在Ubuntu Linux上。有人可以帮我解决这两件事吗?
答案 0 :(得分:12)
写入文件/tmp/dump.csv并将其复制过来。这样可以让你看到谁在运行什么。我的猜测是你是从网上做的,客户端是作为网络服务器进程运行的......
答案 1 :(得分:8)
mysql -u USERNAME --password = PASSWORD --database = DATABASE --execute =' SELECT FIELD
,FIELD
FROM TABLE
LIMIT 0,10000&#39 ; -X> file.xml
答案 2 :(得分:0)
以下是可能有所帮助的讨论: How can I have MySQL write outfiles as a different user?
此外,请尽量避免使用绒毛弄乱你的问题。在您的情况下,您已经知道它是权限问题,因此所有SQL连接和表都无关紧要。你可以简单地使用 选择中一个表中的一个字段,用于演示问题而不会使事情蒙上阴影。
答案 3 :(得分:0)
客户端可能是mysqld
。你必须改变apparmor授权,它会正常工作。看看this answer