Azure sql database “迁移”;Azure sql server“;将数据发送至";Azure托管实例“;

Azure sql database “迁移”;Azure sql server“;将数据发送至";Azure托管实例“;,azure-sql-database,azure-managed-database,Azure Sql Database,Azure Managed Database,将数据库从“Azure sql server”移动到“Azure sql托管实例”有哪些不同的选项,看起来下面的选项是不可能的1)Azure迁移服务-不支持Azure sql server作为源2)bacpac并使用sqlpackage进行导入,这不起作用并且没有结果 我看到的唯一选项是通过具有自托管集成运行时的Azure data factory 是否有更好的选项可以从“Azure sql server”移动到“Azure托管实例”最新版本的SQLPackage支持从多个sql源(如Azure

将数据库从“Azure sql server”移动到“Azure sql托管实例”有哪些不同的选项,看起来下面的选项是不可能的1)Azure迁移服务-不支持Azure sql server作为源2)bacpac并使用sqlpackage进行导入,这不起作用并且没有结果

我看到的唯一选项是通过具有自托管集成运行时的Azure data factory


是否有更好的选项可以从“Azure sql server”移动到“Azure托管实例”

最新版本的SQLPackage支持从多个sql源(如Azure sql数据库)迁移到Azure sql托管实例(MI)

导出:

按照以下步骤,可以使用命令行实用程序导出SQL数据库。如果可能,请使用能够访问Azure SQL数据库和MI的工作站,以避免将导出的bacpac移动到能够访问目标MI的工作站

  • 并运行适用于Windows的DacFramework.msi安装程序

  • 打开一个新的命令提示符窗口,并运行以下命令 cd C:\Program Files\Microsoft SQL Server\150\DAC\bin

  • 运行以下命令以导出SQL数据库: sqlpackage.exe/a:Export/SourceServerName:servername.database.windows.net/SourceDatabaseName:dbname/SourceUser:username/SourcePassword:password/TargetFile:C:\Users\user\Desktop\backup150.bacpac

  • 在上面的命令中,我们将数据库“dbname”从服务器“servername”导出到名为“backup150.bacpac”的本地文件中。您需要调整这些值以匹配您的设置

    导入:

    如果包含导出的bacpac文件的环境无权访问目标MI,请将导出的bacpac文件“backup150.bacpac”移动到可以访问Azure SQL MI的环境中

    按照以下步骤,您可以使用相同的SQLPackage实用程序将bacpac导入Azure SQL托管实例进行导出。如果您已经通过上面的导出对当前环境执行了步骤1和2,请跳到步骤3以运行导入

  • 并运行适用于Windows的DacFramework.msi安装程序

  • 打开一个新的命令提示符窗口,并运行以下命令 cd C:\Program Files\Microsoft SQL Server\150\DAC\bin

  • 运行以下命令以导入到托管实例中 sqlpackage.exe/a:Import/TargetServerName:ManagedInstancename.appname.database.windows.net/TargetDatabaseName:dbname/TargetUser:username/TargetPassword:password/SourceFile:C:\Users\user\Desktop\backup150.bacpac

  • 在上面的命令中,我们将从名为“backup150.bacpac”的bacpac将数据库“dbname”导入目标MI“ManagedInstancename”。您需要调整这些值以匹配您的设置

    注释。

    请注意,早于“18.0”的DACfx版本不支持迁移到Azure SQL托管实例,为了确保最新的兼容性,请确保您使用的是最新版本的SQLPackage。使用旧版本可能会导致以下错误:

    ***导入数据库时出错:无法导入包。 无法连接到主服务器或目标服务器“数据库名称”。在主服务器或目标服务器中必须有一个具有相同密码的用户

    ***导入数据库时出错:无法导入包。 警告SQL0:将Microsoft Azure SQL数据库v12指定为目标平台的项目可能会遇到与SQL Server 2014的兼容性问题。 错误SQL72014:.Net SqlClient数据提供程序:在SQL数据库管理实例上不支持在CREATE DATABASE语句中指定文件和文件组的Msg 41918,级别16,状态1,第2行。 错误SQL72045:脚本执行错误。执行的脚本: