在 SQL Server 上安装 SSMA 组件 (OracleToSQL)

除了安装 SSMA 以外,还必须在运行 SQL Server 的计算机上安装组件。 这些组件包括支持数据迁移的 SSMA 扩展包,以及支持服务器到服务器连接的 Oracle 提供程序。

SSMA for Oracle 扩展包

SSMA 扩展包将部署扩展存储过程,并将 sysdb 数据库添加到指定的 SQL Server 实例。 扩展存储过程提供了模拟 Oracle 功能和行为所需的功能,而 sysdb 数据库包含迁移数据所需的表和存储过程。

此外,在将数据迁移到 SQL Server 时,SSMA 会在使用服务器端数据迁移引擎来迁移数据时创建 SQL Server 代理作业。

先决条件

在 SQL Server 上安装 SSMA for Oracle 服务器组件之前,请确保系统满足以下要求:

  • 已安装 SQL Server 实例。

  • Microsoft Windows Installer 3.1 或更高版本。

  • Microsoft .NET Framework 4.7.2 版或更高版本。 可以从 .NET Framework 开发人员中心获取该产品。

  • 用于 Oracle 的 OLE DB 提供程序(如果正在使用 OLE DB),并连接到要迁移的 Oracle 数据库。 可以从 Oracle 产品媒体或 Oracle 网站安装提供程序。

  • 在安装过程中,必须运行 SQL Server Browser 服务。 此服务用于在安装向导中填充一组 SQL Server 实例。 安装之后,可以禁用 SQL Server Browser 服务。

    注意

    如果 SQL Server Browser 服务正在运行,但仍无法在安装向导中看到一组实例,则必须取消阻止 UDP 端口 1434。 可以使用 Windows 防火墙暂时取消阻止此端口,也可以暂时禁用 Windows 防火墙。 可能还需要暂时禁用防病毒软件。 请确保在安装之后启用防火墙和防病毒软件。

安装扩展包

在将数据迁移到 SQL Server 之前,可以随时安装此扩展包。

重要

要安装此扩展包,用户必须是 SQL Server 实例上的 sysadmin 服务器角色的一名成员。

要安装此扩展包:

  1. SSMAforOracleExtensionPack_n.msi(其中的 n 是内部版本号)复制到运行 SQL Server 的计算机。

  2. 双击 SSMAforOracleExtensionPack_n.msi

  3. “欢迎”页面上,单击“下一步”。

  4. “最终用户许可协议”页面上,阅读许可协议。 如果接受许可协议,请选择“我接受协议”选项,然后单击“下一步”。

  5. 在“选择安装类型”页面上,单击“典型”。

  6. 在“准备安装”页面上,选择“安装”

  7. 在“已完成安装的第一步”页面上,单击“下一步”。

    屏幕上将出现一个新的对话框。 选择扩展包类型。

  8. 选择所需的安装类型,然后单击“下一步”。

    重要

    只有当在 Linux 上运行的 SQL Server 上安装此扩展包或在定向 Azure SQL 托管实例时,才应使用“远程”选项。 在 Windows 上运行的 SQL Server 系统应当始终在本地安装此扩展包。 Azure SQL Database 和 Azure Synapse Analytics 不支持此扩展包。

    如果要在一个本地 SQL Server 实例上安装此扩展包,下一页将允许选择要将 Oracle 架构迁移到哪个本地 SQL Server 实例。 在下拉列表中选择一个实例,然后选择“下一步”。

    默认的实例与计算机同名。 具名实例后跟一个反斜杠和实例名称。

  9. 在连接页面上,选择身份验证方法,然后单击“下一步”。

    Windows 身份验证会使用 Windows 凭据来尝试登录到 SQL Server 实例。 如果选择“服务器身份验证”,则必须输入一个 SQL Server 登录名和密码。

  10. 下一步会要求设置主密钥的密码,该密码将用于加密在服务器端数据迁移期间存储在扩展包数据库中的任何敏感数据。 提供一个强密码,然后单击“下一步”。

  11. 在下一页上,选择“安装实用程序数据库 n”和“安装扩展包库”,其中的 n 是内部版本号,然后单击“下一步”。

    sysdb 数据库是使用此数据库中创建的数据迁移(使用服务器端数据迁移引擎)所需的表和存储过程创建的。

  12. 完成安装之后,会显示一个提示,询问是否要在 SQL Server 的另一个实例上安装实用程序数据库。选择“是”,然后选择“下一步”;要退出此向导,请选择“否”,然后选择“退出”。

  13. 在 SQL Server Management Studio 中或者使用 sqlcmd 实用程序,运行如下脚本,以启用 CLR:

    sp_configure 'clr enabled', 1
    GO
    RECONFIGURE
    GO
    

    如果未启用 CLR,当 SSMA 连接到 SQL Server 时会收到如下错误:

    SSMA 无法检索此扩展包程序集版本信息。 请在数据库服务器上重新安装此扩展包。

SQL Server 数据库对象

安装此扩展包之后,sysdb 数据库中会出现 ssma_oracle.bcp_migration_packages 表。

每次将数据迁移到 SQL Server 时,SSMA 都会创建一个 SQL Server 代理作业。 这些作业被命名为 ssma_oracle data migration package {GUID},并出现在 SQL Server Management Studio 的 SQL Server 代理节点的 Jobs 文件夹中。

还会将以下扩展存储过程添加到 master 数据库中:

  • xp_ora2ms_exec2
  • xp_ora2ms_exec2_ex
  • xp_ora2ms_versioninfo2

另请参阅