首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么在文件不存在的情况下SELECT INTO OUTFILE给出file exists错误?

为什么在文件不存在的情况下SELECT INTO OUTFILE给出file exists错误?
EN

Stack Overflow用户
提问于 2013-04-25 05:12:11
回答 2查看 3.5K关注 0票数 3

该文件肯定不存在,但无论如何我都会收到一个错误。

我有:

代码语言:javascript
复制
$ rm /tmp/records_materialized_view.txt;
$ mysql ... 

> SELECT * FROM records_materialized_view INTO OUTFILE '/tmp/records_materialized_view.txt';

ERROR 1086 (HY000): File '/tmp/records_materialized_view.txt' already exists
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-04-25 05:14:42

SELECT INTO OUTFILE将结果写入服务器文件。

您是否正在检查服务器上是否存在该文件?

如果要选择客户端计算机上的本地文件,只需重定向mysql输出:

代码语言:javascript
复制
mysql mydb < script.sql > /tmp/records_materialized_view.txt
票数 4
EN

Stack Overflow用户

发布于 2016-04-28 14:46:55

当我遇到类似的问题时,我遇到了这个答案。

我意识到SELECT INTO OUTFILE不会覆盖文件,你必须自己清理它们。所以在你下次写它的时候你会得到这个错误。不确定上面的答案是什么意思,即文件被写入服务器文件。

此外,默认情况下,SELECT INTO OUTFILE会写入与数据库数据目录相关的文件。默认位置,即

代码语言:javascript
复制
/var/lib/mysql/

因此,如果你检查你的db数据目录,你应该会在那里找到你的文件。使用绝对路径精确控制文件的结束位置。这正是我想要的,希望它能帮助一些人。干杯。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16202286

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档