自动SQL导出失败

时间:2016-05-31 08:16:46

标签: azure azure-sql-database azure-storage-blobs

我每天晚上都有一个自动备份通过Portal运行,它应该将我的Azure数据库备份为blob存储,作为.bacpac文件,直到星期五才成功运行。 每天晚上我收到一封电子邮件错误说:

Automated SQL Export failed for myServer:myDatabase at 5/30/2016 11:35:39 PM. The temporary database copy was made, but this copy could not be exported to the .bacpac file.

有些教程建议登录Portal并手动完成。当我这样做它成功地工作,我能够没有错误地看到该文件。但是在第二天晚上,该过程再次失败(它不会从执行手动备份中恢复)。有没有办法获得有关失败原因的更多信息?

2 个答案:

答案 0 :(得分:2)

new Portal中,您可以通过审核日志找到更多信息,将在那里记录数据库级操作,包括导入/导出。
enter image description here

答案 1 :(得分:0)

好的,经过进一步的分析,我能够找到我的问题的根本原因到存储过程。 我有一个Stored Proc,它明确地引用了我的数据库。每当在Azure中进行数据库备份时,它都会创建一个临时名称,此时,"中断"存储过程,因为它是自我引用。 修复存储过程已恢复自动备份。

Proc正在调用的声明的一个例子是:

ctypes.windll.shell32.IsUserAnAdmin()

这应该被重写为以下内容以使其可导出:

Select Name from MyDatabase.Dbo.MyTable

请注意,虽然我能够使用Sql Server Management Studio的本地副本获得更有意义的错误,但Azure门户中不存在任何错误。 希望这会帮助其他人。