如何使用Shell脚本将日常数据从Oracle表迁移到MySQL表?

如何使用Shell脚本将日常数据从Oracle表迁移到MySQL表?,mysql,oracle,shell,migration,sqlplus,Mysql,Oracle,Shell,Migration,Sqlplus,我需要将数据插入MySQL表。数据通常通过一个SQL文件从Oracle数据库中获取,该SQL文件通过一些查询从Oracle数据库表中获取数据 所以我需要每天使用Shell脚本自动化这个过程。因此,它将运行SQL文件(Oracle)并获取数据。必须将数据移动到特定的MySQL表中 所以这个行动像, 正在连接到Oracle服务器 在该服务器中执行SQL 将收集的数据移动到MySQL表 我想每天以cron的形式运行该操作 我在LAMP环境下工作 这是我的问题 是否有任何标准工具可用于此操作 我们可以使

我需要将数据插入MySQL表。数据通常通过一个SQL文件从Oracle数据库中获取,该SQL文件通过一些查询从Oracle数据库表中获取数据

所以我需要每天使用Shell脚本自动化这个过程。因此,它将运行SQL文件(Oracle)并获取数据。必须将数据移动到特定的MySQL表中

所以这个行动像,

  • 正在连接到Oracle服务器
  • 在该服务器中执行SQL
  • 将收集的数据移动到MySQL表
  • 我想每天以cron的形式运行该操作

    我在LAMP环境下工作

    这是我的问题

  • 是否有任何标准工具可用于此操作
  • 我们可以使用shell脚本实现这一点吗?如果是,请向我建议步骤
  • 或者,如果你能给我推荐你自己的优化方式,那就太好了
  • 谢谢,
    拉贾

    您可以使用cron作业来实现这一点

  • 编写一个从Oracle DB导出数据的sql文件,即包含带有适当where子句的export table命令的sql文件
  • 编写一个将数据导入Mysql数据库的sql文件,即Mysql中的类似导入文件命令
  • 编写一个shell文件,运行这两个sql文件并验证Mysql表中的数据
  • 安排一个cron作业,每天在特定的时间运行此shell脚本


    请检查Oracle和Mysql上的导入/导出文件格式,它们可能不同,因为一个是免费软件,另一个是商业软件。如果存在差异,则需要对数据/文件进行一些修改,否则就足够了。

    谢谢您的回答。那么我们需要像XML、JSON或CSV这样的中间文件吗?因此,我们可以将(从Oracle)获取的数据保存在该文件中。此后,我们可以使用它来输入mysql。我说的对吗?导出和导入几乎在每个数据库中都有实用程序,它们允许以csv或自定义分隔符格式存储导出的数据。同样,这些文件也可以通过导入功能导入。您只需找到oracle和mysql支持的文件格式(csv、制表符分隔、xml等)(我认为两者都支持csv),然后以该格式导出数据并导入。