【发布时间】:2013-07-08 17:28:18
【问题描述】:
select * INTO OUTFILE '/tmp/result.txt' FIELDS TERMINATED BY ',' LINES TERMINATED BY '/n' from ancestor;
所以我运行这个命令,它正常执行。我再次运行它,它出错,因为它说 result.txt 已经存在。当我检查计算机上的 tmp 文件夹时,我看不到该文件。我见过很多人遇到类似的错误,很多人的反应是它被保存在主机服务器上。确实如此!这很好。但事情就是这样。我需要它保存在我的客户端计算机上。我如何使它在客户端上工作?此外,客户端正在运行 mac os x。此外,使用客户端的人使用工作台并且不希望使用终端。因为我知道终端有 -e 命令,但我不知道如何在工作台上复制它。
【问题讨论】:
-
预计不会再次运行。 mysql 将 NOT 覆盖已存在的文件作为安全措施。确保您所在的用户有权查看该文件。不知道 osx 是否会隐藏您无权访问的文件,但如果确实如此,那么您可能无法查看该 result.txt 文件。
-
是的,我发现了我的老问题。但是现在我有了一个新问题,这就是我编辑问题的原因:(
-
不,您不能让 mysql 服务器将文件写入另一台机器。这意味着服务器进程必须具有写入权限和对客户端计算机的访问权限。你确实不希望这成为可能。 dev.mysql.com/doc/refman/5.1/en/select-into.html
If you want to create the resulting file on some other host than the server host, you normally cannot
标签: mysql select into-outfile