【问题标题】:Script to export [closed]导出脚本[关闭]
【发布时间】:2014-06-25 00:28:16
【问题描述】:

我有一个典型的 ubuntu 设置和一个 mysql 数据库。我正在尝试找到一种方法来设置 cron 作业以将 mysql db 中的每个表导出到单独的 .csvs 到服务器上的文件夹中。我不完全确定如何解决这个问题,我发现的所有内容都显示了如何将多个 csv 带入 mysql 数据库,但反之则不然。任何帮助将不胜感激

【问题讨论】:

  • 你可以用mysqldump做到这一点
  • 谢谢,但我找不到任何关于使用 mysqldump 为每个表创建单独的 .csvs 的信息
  • 要么我很困惑,要么你不努力搜索mysqldump db_name table_name -T --fields-enclosed-by=\" --fields-terminated-by=, > table_name.csv

标签: php mysql linux scripting cron


【解决方案1】:

您可以使用 MySQL 命令行 cliet 来执行类似的命令

select * from someTable into outfile 'somFile.csv' 
  fields optionally enclosed by '"' terminated by ',' lines terminated by '\n';

将其粘贴在 SQL 脚本文件中(如果合适,还可以添加额外的 SELECT),然后您就可以执行了:

mysql -u username --password=******** < sqlscript.sql

将该命令添加到croncrontab -e,您应该完成了。

几个问题: - 确保执行 cron 的用户对文件系统具有适当的权限 - 您登录的 mySQL 用户需要FILE 权限 - 创建 CSV 文件后,您可能需要一些额外的命令来移动它们。

【讨论】:

  • mysqldump 从命令行会更容易
猜你喜欢
  • 2018-10-21
  • 1970-01-01
  • 2013-11-25
  • 2012-11-12
  • 2013-02-08
  • 2023-03-09
  • 2021-08-13
  • 2012-03-18
  • 1970-01-01
相关资源
最近更新 更多