由于使用 Windows 身份验证的用户,使用 BAPAC 将本地 SQL Server 导出到 Azure SQL 失败

Dai*_*Dai 6 sql-server azure azure-sql

我有一个本地 SQL Server 2014 数据库 - 架构本身很好并且完全兼容 Azure SQL。

但是,它有一个USER对象绑定到LOGIN配置为使用 Windows 身份验证的服务器(因此密码不存储在连接字符串中)。

我想将此数据库导出到 Azure SQL,但是由于USER对象原因 BACPAC 生成失败:

在用作数据包一部分的架构中发现了一个或多个不受支持的元素。
错误 SQL71564:元素用户:[applicationuser]将属性AuthenticationType设置为 Microsoft Azure SQL 数据库 v12 不支持的值。
错误 SQL71564:元素登录:[SERVERNAME\LocalUserName]将属性IsMappedToWindowsLogin设置为 Microsoft Azure SQL 数据库 v12 不支持的值。

创建 BACPAC 文件时,SQL Server Management Studio 2014 不允许我排除或忽略USERLOGIN对象。

SQL Server Data Tools 确实让我排除了这些对象,但 SSDT 不能(据我所知)执行 BACPAC 生成,这是我的目标。

小智 2

我首先尝试删除用户,但没有成功。然后我发现这个 MS 工具运行得非常好。我能够毫无问题地迁移架构和数据。

MS数据迁移助手(DMA)