Azure Bacpac文件还原错误

时间:2012-06-06 01:24:36

标签: sql sql-server-2008 azure azure-sql-database bacpac

我使用RedGate Azure Backup tool从Azure数据库执行每日bacpac文件备份。 直到5月31日,所有我的Bacpac文件都可以使用DAC Client Tool恢复到本地SQL2008R2数据库。

从6月1日开始,我收到了如下错误:

Failure Creating schema objects in database
'XXXXX' System.Data.SqlClient.SqlException (0x80131904): Cannot
find the object "dbo.XXXX" because it does not exist or you do not have per
missions.

当我检查它时,表仍然存在于DB中。也不知道这个。 有没有人面对那种丢失的表,无效的列..等等

2 个答案:

答案 0 :(得分:0)

现在

RedGate Azure Backup is deprecated。 DAC客户端工具(DacCli.exe)已integrated into SSMS 2012 and SSDT。您可以尝试更新DAC Client Tool to the latest version 1.6 from 1.2

SSMS 2012数据工具现在允许您导入数据层应用程序。查看SQL 2012下载中的Data-Tier Application Framework Feature。查看this MSDN article for reference

答案 1 :(得分:0)

我使用免费实用程序SQL备份和FTP将Azure SQL数据库备份到本地.bacpac文件。免费版本允许您备份最多2个不同的数据库,然后付费版本是非常合理的(即专业版本是70美元左右)。

http://sqlbackupandftp.com/

它实际上是按我的计划运行的,会自动通过电子邮件向我发送备份结果并将其存储在我的Google云端硬盘上(即使是免费版本 - 我只是将时间戳备份存储在我的Google云端硬盘的文件夹中) )。

我用来将其恢复到本地数据库的过程是:

  1. 将SQL Azure备份到.bacpac文件
  2. 以sa
  3. 身份登录本地数据库服务器
  4. 右键单击“数据库”
  5. 单击“导入数据层应用程序”
  6. 从Azure或本地磁盘中选择.bacpac文件
  7. 输入名称和存储数据和日志文件的位置
  8. 如有必要,将原始数据库设置为单用户模式并将其删除
  9. 如有必要,将还原的数据库重命名为原始数据库名称
  10. 注意:必须使用SQL Server 2012(或更高版本)管理工具