将 Sybase ASE 数据迁移到 SQL Server 或 Azure SQL 数据库 (SybaseToSQL)

将 Sybase Adaptive Server Enterprise (ASE) 数据库对象成功加载到 SQL Server 或 SQL Azure 数据库后,就可以将数据从 ASE 迁移到 SQL Server 或 Azure SQL 数据库。

重要

如果正在使用的引擎是服务器端数据迁移引擎,那么在迁移数据之前,必须在运行 SSMA 的计算机上安装 SSMA for Sybase ASE 扩展包和 Sybase ASE 提供程序。 SQL Server 代理服务也必须正在运行。 有关如何安装扩展包的详细信息,请参阅在 SQL Server 上安装 SSMA 组件 (SybaseToSQL)

设置迁移选项

将数据迁移到 SQL Server 或 Azure SQL 数据库之前,请查看“项目设置”对话框中的项目迁移选项。

  • 使用此对话框,可以设置迁移批处理大小、表锁定、约束检查、NULL 值处理和标识值处理等选项。 有关“项目迁移设置”的详细信息,请参阅项目设置(迁移)(Sybase)

    有关“扩展数据迁移设置”的详细信息,请参阅数据迁移设置

  • “项目设置”对话框中的“迁移引擎”允许用户使用两种类型的数据迁移引擎执行迁移过程,即:

    1. 客户端数据迁移引擎

    2. 服务器端数据迁移引擎

客户端数据迁移:

  • 若要执行客户端数据迁移,请在“项目设置”对话框中选择“客户端数据迁移引擎”选项。

  • 在“项目设置”中,默认会设置“客户端数据迁移引擎”选项。

    注意

    客户端数据迁移引擎驻留在 SSMA 应用程序中,因此不受扩展包可用性的限制。

服务器端数据迁移:

  • 在服务器端数据迁移期间,引擎驻留在目标数据库上。 该引擎通过扩展包安装。 有关如何安装扩展包的详细信息,请参阅在 SQL Server 上安装 SSMA 组件 (SybaseToSQL)

  • 若要执行服务器端数据迁移,请在“项目设置”对话框中选择“服务器端数据迁移引擎”选项。

注意

当 Azure SQL 数据库用作目标数据库时,只允许“客户端数据迁移”,不支持服务器端数据迁移。

将数据库迁移到 SQL Server 或 Azure SQL 数据库

迁移数据是一个大容量加载操作,即在事务中将 ASE 表的多行数据移动到 SQL Server 表中。 每个事务中加载到 SQL Server 或 Azure SQL 数据库的行数在“项目设置”中进行配置。

若要查看迁移消息,请确保“输出”窗格可见。 若不可见,则从“视图”菜单中选择“输出”。

迁移数据

  1. 确认满足以下条件:

    • 已在运行 SSMA 的计算机上安装 ASE 提供程序。

    • 已将转换后的对象与目标数据库(SQL Server 或 Azure SQL 数据库)同步。

  2. 在 Sybase 元数据资源管理器中,选择包含了要迁移的数据的对象:

    • 若要迁移所有架构的数据,请选中“架构”旁边的复选框。

    • 要迁移数据或省略单个表,请先展开架构,在展开“表”,然后选中或清除表旁边的复选框。

  3. 要迁移数据,会发生两种情况:

    客户端数据迁移:

    要执行“客户端数据迁移”,请在“项目设置”对话框中,选择“客户端数据迁移引擎”选项。

    服务器端数据迁移:

    • 在执行服务器端数据迁移之前,请确保:

      1. 已在 SQL Server 实例上安装 SSMA for Sybase 扩展包。

      2. SQL Server 代理服务当前在 SQL Server 实例上运行。

    • 要执行服务器端数据迁移,请在“项目设置”对话框中,选择“服务器端数据迁移引擎”选项

  4. 右键单击 Sybase 元数据资源管理器中的“架构”,然后单击“迁移数据”。 也可以迁移单个对象或对象类别的数据:右键单击对象或其父文件夹,然后选择“迁移数据”选项。

    注意

    如果未在 SQL Server 实例上安装 SSMA for Sybase 扩展包,并且选择了“服务器端数据迁移引擎”,则会在将数据迁移到目标数据库时遇到以下错误:“未在 SQL Server 上找到 SSMA 数据迁移组件,无法进行服务器端数据迁移。 请检查是否已正确安装扩展包。” 单击“取消”终止数据迁移。

  5. 在“连接到 Sybase ASE”对话框中输入连接凭据,然后单击“连接”。 有关连接 Sybase ASE 的详细信息,请参阅连接到 Sybase (SybaseToSQL)

    如果目标数据库是 SQL Server,则在“连接到 SQL Server”对话框中输入连接凭据,然后单击“连接”。 有关连接 SQL Server 的详细信息,请参阅连接到 SQL Server (SybaseToSQL)

    如果目标数据库是 Azure SQL 数据库,则在“连接到 Azure SQL 数据库”对话框中输入连接凭据,然后单击“连接”。 有关连接 Azure SQL 数据库的详细信息,请参阅连接到 Azure SQL 数据库 (SybaseToSQL)

    “输出”窗格中会显示消息。 迁移完成后,将出现“数据迁移报告”。 如果有任何数据未迁移,请单击包含错误的行,然后单击“详细信息”。 完成报告后,单击“关闭”。 有关数据迁移报告的详细信息,请参阅数据迁移报告(SSMA 通用)

注意

当 SQL Express Edition 用作目标数据库时,只允许客户端数据迁移,不支持服务器端数据迁移。

大规模迁移数据(预览版)

如果需要在短时间内迁移 100 GB 及以上的大型数据,就适合使用大规模离线迁移选项。 此功能利用 Azure 数据工厂管道和云的可伸缩性,将本地或外部 Sybase 数据源迁移到 Azure SQL 平台,无论是 IaaS VM 还是 SQL PaaS。 此功能将创建数据工厂或使用现有数据工厂从 Sybase 迁移数据。

  1. 要执行大型离线迁移,请单击“大规模迁移数据”。 离线数据迁移功能支持数据库级别迁移。

  2. 提供 Microsoft Entra Azure AD 帐户用于身份验证。 输入用户名后,选择“连接”

  3. 选择已配置了 Azure SQL 虚拟机或 Azure SQL 数据库或托管实例的租户和订阅,然后单击“下一步”。

  4. 如果有首选使用的现有数据工厂,则可以选择要用于此迁移的资源组和数据工厂名称。 若没有,则单击“新建”来创建资源组和 Azure 数据工厂。

  5. 若要迁移外部数据源,需要集成运行时。 单击“新建”并按照步骤创建集成运行时,或使用现有集成服务。 若要创建集成服务,需要配置网关安装,并且需要提供密钥来配置集成运行时。

  6. 完成集成运行时配置后,迁移工作流将在数据工厂中创建链接服务。 先提供 Sybase 凭据,再提供 SQL 凭据。

  7. 最后,提供唯一的管道名称。 管道名称支持字符和数值。 避免使用任何特殊字符。

  8. 如果目标表包含数据,则将被截断并重新加载。 此时会显示警告对话框。 选择“确定”以继续,或选择“取消”以避免截断并加载活动。

  9. 创建管道需要几分钟时间。 状态栏将提供管道的创建进度。 如果成功创建管道,则会在输出日志中写入消息:“已为数据迁移活动创建数据工厂管道 [PipelineName]。”

  10. 若要监视数据迁移,请单击监视 URL,或转到 Azure 门户中的“数据工厂监视”页面。

另请参阅

将 Sybase ASE 数据库迁移到 SQL Server - Azure SQL 数据库 (SybaseToSQL)