0

我是 SQL Azure 的新手,我们订阅了 Azure SQL 弹性池。我的本地 SQL Server 中有两个数据库,它有一个内部调用的存储过程,msdb.dbo.sp_send_dbmail我已安排这些存储过程在作业中运行 ( SQL Server Agent -> Scheduler)。

我想将这两个数据库连同 DB 邮件帐户和 SQL Server 作业一起移动到 Azure。我在订阅中遇到了困难,因为我看不到 msdb、SQL Server 代理和数据库电子邮件。我们只想使用 SQL Azure 作为服务,不需要你的支持。

我尝试部署数据库并收到错误消息:

错误
SQL71562:验证元素 [dbo].[AMPLoanAgingEMail] 时出错:
过程:[dbo].[AMPLoanAgingEMail] 对对象 [msdb].[dbo].[sp_send_dbmail].[@profile_name] 的引用未解析。从该平台创建包时不支持外部引用。

预期的结果是我想将那些计划的作业和存储过程移动到我的 Azure。

4

1 回答 1

0

Azure SQL 数据库不支持msdb数据库。我们无法将 msdb 迁移到 Azure 或在 Azure SQL 数据库中对其进行任何操作。

在此处输入图像描述

更多详细信息,请参见:msdb 数据库

仅 Azure SQL 托管实例支持 SQL Server 代理。在此处输入图像描述

Azure SQL 数据库也不支持 数据库电子邮件。在此处输入图像描述

这就是为什么您看不到 msdb 、 SQL 服务器代理和数据库电子邮件的原因。

您的存储过程[dbo].[AMPLoanAgingEMail]无法[msdb].[dbo].[sp_send_dbmail]在 msdb 中调用。错误消息也提到了这一点。

目前,Azrue SQL 数据库中没有针对 msdb 的解决方案。

在将数据库迁移到 Azure SQL 数据库之前,您可以使用数据迁移助手 (DMA)来帮助您评估您的数据库。

希望这可以帮助。

于 2019-05-03T06:37:48.943 回答