将查询从 MySQL 导出到 Redshift

Posted

技术标签:

【中文标题】将查询从 MySQL 导出到 Redshift【英文标题】:Export query from MySQL to Redshift 【发布时间】:2017-11-21 15:40:39 【问题描述】:

我需要每天将特定查询的结果加载到 Redshift。我已经在 redshift 上创建了一个表,它将支持这个查询的结果,但现在我有点卡住了,因为我找不到解决这个问题的好方法。

到目前为止,我尝试使用 python,但对于主要存储描述和字符编码的字段中的行终止符,我感到很头疼。

我知道很多允许您连接到数据库并进行查询的程序也有导出到 csv 的选项,但由于我需要每天自动执行此操作,我认为其中任何一个都不适合我。

现在我想知道是否有更合适的选择,以便我可以开始研究它们。我不是要求一步一步如何,而是要求我应该开始研究的工具/程序/等。

【问题讨论】:

【参考方案1】:

您应该查看mysql 的存储过程和事件——仅使用 MySQL,您可以让它每天生成一个文件。

但是,您不能动态重命名文件或覆盖它,因此您需要第二个作业来删除文件 - 这可以使用 Python 完成。

无论您运行的是 Windows 还是 Linux,您都应该能够安排批处理文件或 python 脚本每天执行一次,这将是一种替代方式。

这是否解决了您的问题?

【讨论】:

是的,我会进一步调查。 @Marco Cool,如果您遇到问题,请告诉我。幸运的是,MySQL(相对)宽容。基本模式是“创建一个执行您想要的操作的过程”和“创建一个在您需要时调用该过程的事件”。

以上是关于将查询从 MySQL 导出到 Redshift的主要内容,如果未能解决你的问题,请参考以下文章

从 mysql 数据库查询中使用 php 时加快 csv 导出

[记录]MySQL 查询无法导出到文件

将mysql中查询结果导出到csv文件

如何将查询结果导出到 Windows 机器 MySQL 8.0 中的 csv?

将MySQL查询结果导出到CSV

oracle/mysql 将查询数据导出到文件中