azure – 由于外键冲突无法恢复bacpac
我正在尝试将SQL Azure数据库的备份(.bacpac)还原到另一个SQL Azure数据库,但由于以下错误而无法执行此操作:
我还试图在本地恢复但没有成功使用mscorlib异常(我将再次尝试它,并将很快更新确切的错误消息. 我检查了实时数据库,我看不出为什么这个密钥被违反了. 我还尝试修改.bacpac中包含的model.xml来删除约束但是这会失败,因为它现在(正确地说)会失败校验和验证. 解决方法bacpac文件不是事务性的,因此在生成bacpac时写入目标数据库的新行最终会破坏索引.数据库要么没有其他用户连接进行写入,要么您可以复制数据库并从副本中生成bacpac.1)复制目标数据库,它将立即返回,但数据库将需要一些时间来复制.此操作将创建完整的事务副本: CREATE DATABASE <name> AS COPY OF <original_name> 2)找到复制操作的状态: SELECT * FROM sys.dm_database_copies 3)在复制的数据库上生成bacpac文件,任何人都不会使用该文件. 4)删除复制的数据库,你将有一个工作的bacpac文件. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |