在https://learn.microsoft.com/en-us/azure/sql-database/sql-database-job-automation-overview上,它说 SQL 代理有一个新的替代品。但是,我无法让它工作。
我在接受“测试版软件”条款时遇到了问题,但我的经理接受了他帐户上的条款,我可以继续。
在门户网站上,我收到此错误消息:
Deployment failed
Deployment to resource group 'MyRG' failed.
Additional details from the underlying API that might be helpful: At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/arm-debug for usage details.
我也尝试过Powershell 界面,在这里我卡住了
New-AzSqlElasticJobAgent : No tenant found in the context. Please ensure that the credentials you provided are authorized to access an Azure subscription, then run Connect-AzAccount to login.
At line:4 char:28
+ $JobAgent = $JobDatabase | New-AzSqlElasticJobAgent -Name $AgentName
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : CloseError: (:) [New-AzSqlElasticJobAgent], ArgumentException
+ FullyQualifiedErrorId : Microsoft.Azure.Commands.Sql.ElasticJobs.Cmdlet.NewAzureSqlElasticJobAgent
这可能很简单,但我不知道是什么......
门户上的错误不清楚,但您应该可以在部署摘要中找到详细信息。
在门户上,转到您的资源组并导航到部署选项卡。在那里,您可以找到包含有关进度和错误的详细信息的部署历史记录。
Powershell 的问题看起来像您没有设置订阅上下文。
您应该将上下文设置为包含要部署内容的资源组的订阅。
要完成这项工作,请使用以下示例: 示例 1:设置当前订阅
应用当前订阅后,您应该能够看到部署过程中真正的错误是什么。
在与 Microsoft 建立支持案例后,已找到问题的原因。数据库定义了一个数据库触发器,新的 job_admin 帐户没有足够的权限来执行。所以所有的模式修改都回滚了。
我最初禁用了这样的触发器
我也可以只授予新工作帐户的插入权限,如下所示: