将数据从 Oracle 数据库 11G 传输到 MongoDB

Posted

技术标签:

【中文标题】将数据从 Oracle 数据库 11G 传输到 MongoDB【英文标题】:Transfer Data from Oracle database 11G to MongoDB 【发布时间】:2018-12-27 17:00:28 【问题描述】:

我想要从 Oracle 数据库到 MongoDB 的自动定时传输。在典型的 RDBMBS 场景中,我会通过创建 dblink 在两个数据库之间建立连接,并使用 PL/SQL 过程传输数据。 但我不知道在 MongoDB 案例中该怎么做;因此,我应该如何以及如何实现,以便我可以从 Oracle 数据库自动传输到 MongoDB。

【问题讨论】:

【参考方案1】:

我会考虑使用 Oracle Goldengate。它有一个 MONGODB 处理程序。 https://docs.oracle.com/goldengate/bd123110/gg-bd/GADBD/using-mongodb-handler.htm#GADBD-GUID-084CCCD6-8D13-43C0-A6C4-4D2AC8B8FA86

https://oracledb101.wordpress.com/2016/07/29/using-goldengate-to-replicate-to-mongodb/

【讨论】:

【参考方案2】:

您希望将什么类型的数据从 Oracle 数据库传输到 MongoDB?如果您只想按设定的时间表导出/导入少量表,您可以在 Oracle 端使用 UTL_FILE 之类的东西来创建表的 .csv 导出并使用 DBMS_SCHEDULER 来安排导出将根据您所需的时间范围自动发生。

您还可以使用SQL Developer 之类的应用程序将表导出为 .csv 文件,方法是浏览表的架构列表,然后右键单击 -> 导出并选择 .csv 格式。您可能还会发现通过 SQL Developer 使用 UTL_FILEDBMS_SCHEDULER 比依赖 SQL*Plus 更容易一些。

拥有 .csv 文件后,您可以使用 mongoimport 导入数据,但我不确定 MongoDB 是否支持像 Oracle 这样的计划作业(我主要使用后者。 ) 如果您使用的是Linux,您可以使用cron 来安排一个脚本,该脚本将在预定的时间间隔内导入 .csv 文件。

【讨论】:

以上是关于将数据从 Oracle 数据库 11G 传输到 MongoDB的主要内容,如果未能解决你的问题,请参考以下文章

使用 ssis 从 SQL Server 表复制到 Oracle 11g

将数据库从 oracle 11g 迁移到 MySql 5.7 的优点、缺点和问题是啥?

Oracle 11g从入门到精通pdf

如何从 Oracle 11g XE 导出“数据库”并将其导入 Oracle 10.2?

oracle 11g中怎么将查询指定的数据不在指定的字段方法

怎样将oracle10g数据库里面的表导入到11g中