Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将mysql数据导出到主目录ubuntu中的csv文件_Java_Mysql_Excel_Csv_Ubuntu - Fatal编程技术网

Java 将mysql数据导出到主目录ubuntu中的csv文件

Java 将mysql数据导出到主目录ubuntu中的csv文件,java,mysql,excel,csv,ubuntu,Java,Mysql,Excel,Csv,Ubuntu,我在mysql中有一个表,现在我正试图将整个数据导出到csv文件中。根据文档,一种可能的方法是使用查询: SELECT id, name, email INTO OUTFILE '/tmp/result.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY ‘\\’ LINES TERMINATED BY '\n' FROM users WHERE 1 这工作得非常好,但它会在文件系统的mytmp目录中创建文件。

我在mysql中有一个表,现在我正试图将整个数据导出到csv文件中。根据文档,一种可能的方法是使用查询:

SELECT id, name, email INTO OUTFILE '/tmp/result.csv'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
ESCAPED BY ‘\\’
LINES TERMINATED BY '\n'
FROM users WHERE 1
这工作得非常好,但它会在文件系统的my
tmp
目录中创建文件。我希望该文件位于eclipse工作区的项目目录中(我正在使用java)

接下来,我尝试将这个文件复制到我的目的地(使用ApacheCommonsIO),然后删除这个文件。但我无法删除该文件(“java.io.IOException:无法删除文件:”,我假设这是因为我没有tmp目录的根访问权限)


有没有其他优雅的方法来做我想做的事情……或者我必须使用ApachePOI之类的库?

下面的解决方案对我很有用


使用命令行>mysql-e“按条从foo顺序选择*”>'/path/to/file'

尝试以sudo的形式运行程序,或者更改输出文件path@gtgaxiola更改outfilepath不起作用,因为“转为OUTFILE”只会创建托管mysql服务器的文件。无论如何,我正在寻找一个更优雅的解决方案(对不起,但我不想使用sudo),你有管理权限访问mysql服务器吗?您能否为您的程序创建具有适当chmod权限的目录?然后您可以更改输出文件path@gtgaxiola我的mysql服务器有一个单独的用户名和密码,如果我以root用户身份登录,我可以在chmod中从终端创建一个目录,如果这就是您询问Mysql服务器的意思,如果有一种方法可以创建一个目录,将您的csv文件放在一个具有更宽松的chmod权限(例如允许从特定用户/gropus删除)的目录中,那么您可以将Mysql脚本改为指向该目录,而不是/tmp/