【问题标题】:Transfer Microsoft SQL Server data to Oracle tables on daily basis每天将 Microsoft SQL Server 数据传输到 Oracle 表
【发布时间】:2017-11-07 11:53:11
【问题描述】:

我想每天将 SQL Server 数据传输到 Oracle 表。

最好的方法是什么?我使用 Windows 7 作为操作系统,使用 SQL Developer 作为工具。

请提出建议。

谢谢。

【问题讨论】:

  • SQL 代理作业最有可能。
  • 尝试查看 SSIS(您要实现的目标称为 ETL - 提取转换和加载)
  • 通过 HS ODBC 数据库链接考虑 Oracle 的物化视图(每日完全刷新)。这就是我们将非 Oracle 数据导入 Oracle 数据库的方式。
  • 不安装授权软件,可以吗?
  • 如果您熟悉 Java。 dbisweb.wordpress.com

标签: sql-server oracle oracle-sqldeveloper


【解决方案1】:

您可以使用内置的导出数据命令生成一个 SSIS 包,然后您可以每天运行该包。

1) Right click on the data base in SSMS on the Object Explorer Window.
2) Select 'Tasks' from the pop-up window.
3) Click on Export Data.
4) Choose a data source (SQL Server Data Base)
5) Choose data destination as Oracle

在 GUI 结束时,您可以将其保存为 SSIS 包。请这样做,然后您可以使用 DTEXEC 命令将其作为 SQL Server 代理作业或在 Windows 级别运行。这样做时我最大的挑战是在 Oracle 上获取允许编写和查找正确 ORA 文件的凭据。

【讨论】:

  • 不安装正版软件,是否可以实现以上步骤?
  • 没有 SSIS 是 SQL Server 的一部分。获得许可后,SQL Server SSIS 是免费的。我不确定 BCP。
【解决方案2】:

您可以设置事务复制并在 oracle 中创建非 sql 服务器订阅者。 见:https://docs.microsoft.com/en-us/sql/relational-databases/replication/non-sql/non-sql-server-subscribers

或者如果您只需要每天更新一次数据,请考虑使用快照复制。 事务和快照复制都可以有一个非 sql 服务器订阅者。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-29
    • 2020-05-21
    • 2019-03-24
    • 1970-01-01
    • 1970-01-01
    • 2016-11-03
    • 1970-01-01
    相关资源
    最近更新 更多