答案 0 :(得分:1)
您可能已在Azure SQL上启用了Blob审核,对吧?
请查看这篇文章:Exported database from Azure SQL failed to be imported to Azure SQL or to local SQL Server
从该文章中摘录:
原因:
这是由于Azure SQL DB和本地SQL Server安装之间的行为不同
没有密码的主密钥是仅Azure SQL DB的功能,而本地SQL Server安装必须对主密钥进行密码加密。
解决方案:
选项1
为了减轻导入Azure SQL DB的麻烦,请使用Azure门户中的导入。
为减少导入本地SQL Server的安装,您可以更改现有的主密钥并为其添加密码加密。
这应该在导出数据库之前完成
ALTER MASTER KEY ADD ENCRYPTION BY PASSWORD = '<PasswordHere>';
选项2 为了短期缓解,我们为您提供执行以下操作的PowerShell脚本:
从bacpac中删除主键对象
从bacpac删除凭据对象
在bacpac上运行此PS脚本后,您将拥有带有“补丁”后缀的新bacpac文件。
答案 1 :(得分:1)
在将数据库导出为bacpac之前,需要执行以下步骤:
之后,再次导出数据库并将其导入本地SQL Server。
答案 2 :(得分:0)
我成功解决了此问题,首先我在azure数据库实例中执行CREATE MASTER KEY脚本,然后导出该数据库。然后将该数据库导入本地SQL Server。