我必须每隔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'已存在"。我需要覆盖现有文件。
任何人都可以帮助解决这个问题吗?
答案 0 :(得分:0)
我猜您使用的是SELECT ... INTO OUTFILE
声明。
根据documentation,文件不存在或语句失败:
SELECT的SELECT ... INTO OUTFILE'file_name'形式将所选行写入文件。该文件是在服务器主机上创建的,因此您必须具有FILE权限才能使用此语法。 file_name不能是现有文件...
使用带有mysqldump的文件并放入crontab
*/5 * * * * /path/to/your/file/backup.sh