首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用bacpac导入数据层应用程序

使用bacpac导入数据层应用程序
EN

Stack Overflow用户
提问于 2018-09-04 22:19:07
回答 3查看 452关注 0票数 0

我已经成功地从Azure DB中以.bacpac格式导出了我的数据库备份,但是当我要导入该.bacpac时,它会抛出一个错误。

EN

回答 3

Stack Overflow用户

发布于 2018-09-04 22:26:13

你可能在你的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脚本之后,您将拥有一个带有"patched“后缀的新bacpac文件。

票数 1
EN

Stack Overflow用户

发布于 2018-09-04 23:57:08

在将数据库导出为bacpac之前,您需要执行以下步骤:

  1. 禁用数据库审核(如果已启用)。
  2. 使用DROP master key命令删除数据库主密钥。

之后,再次导出数据库并将其导入到本地SQL Server上。

票数 1
EN

Stack Overflow用户

发布于 2018-09-06 13:29:58

我成功地解决了这个问题,首先我在azure db实例中执行CREATE MASTER KEY script,然后导出该数据库。然后将该数据库导入到本地SQL服务器。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52168410

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档