如何从MYSQL导出时使用新文件覆盖现有CSV文件

时间:2014-06-26 12:19:49

标签: mysql csv

我必须每隔5分钟将MySQL表数据导出为CSV文件,文件位置和文件名相同。 我运行以下查询导出:

SELECT *  INTO OUTFILE ' c:/newfolder/matrix.csv ' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' FROM tablename

当我导出数据时,第一次正确导出数据,但第二次显示错误" SQL错误(1086)文件:' c:/newfolder/matrix.csv'已存在"。我需要覆盖现有文件。

任何人都可以帮助解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我猜您使用的是SELECT ... INTO OUTFILE声明。

根据documentation,文件不存在或语句失败:

  

SELECT的SELECT ... INTO OUTFILE'file_name'形式将所选行写入文件。该文件是在服务器主机上创建的,因此您必须具有FILE权限才能使用此语法。 file_name不能是现有文件...

使用带有mysqldump的文件并放入crontab

*/5 * * * * /path/to/your/file/backup.sh