我需要将 SQL 2008 R2 本地数据库移至 Azure SQL 云数据库。数据库太大,无法用数据编写脚本,而 Azure SQL 云无法恢复标准 .bak 文件。
尝试使用任务-->从中导出数据层应用程序这指南与 SSMS 2016 一起创建我将导入 Azure SQL 云的 .bacpac 文件。但我一直收到此错误消息:用户 [test_user] 对登录名 [test_user] 有未解析的引用。
为什么我会收到此错误?也许有更好的方法将数据库从 SQL 2008 导出/导入到 Azure SQL?
答案1
这个错误通常是由于缺乏权限造成的。
由于您正在创建 bacpac 文件以将数据库传输到 Azure,因此我们可以排除目标服务器上的权限。
这意味着您很可能缺少读取源服务器上的登录定义的权限。
您需要授予您的用户VIEW DEFINITION ON LOGIN
权限,或将其添加到具有内置权限的角色。