【问题标题】:Oracle to SQLServer exportOracle 到 SQL Server 导出
【发布时间】:2018-06-27 09:34:13
【问题描述】:

我必须从我无法直接访问的现有数据库 oracle 中移动数据。数据大约有 11 个表,每个表 5GB。数据库管理员可以将表导出到一些 .csv 或 xml。 csv 的问题是一些数据是文本的,有很多特殊字符。 xml 的问题在于标记是一种开销,它将显着增加文件的大小。 DBA 管理员的能力不足以提供一个工作和整洁的解决方案。他使用 toad 作为数据库工具。您能否提供一些想法如何以最佳方式执行此类迁移?

【问题讨论】:

  • 听起来你需要一个新的 DBA

标签: sql-server oracle migration


【解决方案1】:

请参考以下步骤将数据从 Oracle 迁移到 SQL Server。

推荐的迁移过程 要将对象和数据从 Oracle 数据库成功迁移到 SQL Server、Azure SQL DB 或 Azure SQL 数据仓库,请使用以下过程:

1.创建一个新的 SSMA 项目。

2.创建项目后,您可以设置项目转换、迁移和类型映射选项。有关项目设置的信息,请参阅设置项目选项 (OracleToSQL)。有关如何自定义数据类型映射的信息,请参阅映射 Oracle 和 SQL Server 数据类型 (OracleToSQL)。

3.连接Oracle数据库服务器。

4.连接到 SQL Server 实例。

5.将 Oracle 数据库架构映射到 SQL Server 数据库架构。

6.(可选)创建评估报告以评估数据库对象的转换并估计转换时间。

7.将 Oracle 数据库架构转换为 SQL Server 架构。

8.将转换后的数据库对象加载到SQL Server中。

您可以通过以下方式之一执行此操作:

 * Save a script and run it in SQL Server.

 * Synchronize the database objects.

9。将数据迁移到 SQL Server。

10.如有必要,更新数据库应用程序。

更多详情: [https://docs.microsoft.com/en-us/sql/ssma/oracle/migrating-oracle-databases-to-sql-server-oracletosql?view=sql-server-2017]

【讨论】:

  • 是的,但是...正如我所写:“...我没有直接访问权限”,我无法执行“连接到 Oracle 数据库服务器”。
【解决方案2】:

管理员将数据导出为 CSV 后,尝试将其转换为能够识别所有特殊字符的字符集。 然后,尝试按照此链接中的步骤操作:link,它可能会起作用。 如果导入后仍有特殊字符,请手动转换。

【讨论】:

    【解决方案3】:

    让 DBA 使用专为此目的设计的 ASCII 分隔符导出表:

    Row delimiter: Decimal 30 / 0x1E
    Column delimiter: Decimal 31 / 0x1F
    

    然后您可以使用 BCP(或任何其他类似产品)将数据上传到 SQL Server。

    【讨论】:

      猜你喜欢
      • 2011-01-02
      • 1970-01-01
      • 2010-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多