【问题标题】:Unable to Change Resource Group for Azure SQL Server无法更改 Azure SQL Server 的资源组
【发布时间】:2019-08-06 19:44:11
【问题描述】:

我正在尝试更改我的 Azure SQL Server 的 ResourceGroup(这包括我添加到该组的一个数据库,当然还有主数据库)。我创建了一个新的 Azure 组,当我尝试切换该组时,我收到了 ResourceNotFound 错误。

该错误显示了我一直尝试在要更改的资源组上部署的数据库的名称,但部署失败,因此没有该名称的数据库可用。

此错误发生在验证步骤并给我此消息:

{"code":"ResourceMoveFailed","message":"无法从提供程序中获取所有要移动的资源。有关详细信息,请参阅详细信息。诊断信息:时间戳 '20190806T192716Z',订阅 ID '******',跟踪 id '*******',请求相关 id '*******'。","details":[{"message":"无法获取资源 '/modules/AzureResourceManager/subscriptions/*******/resourcegroups/********/providers/Microsoft.Sql/servers/********/databases/ {Undeployed_Database_Name}'。状态码'NotFound'。原因'{\"error\":{\"code\":\"ResourceNotFound\",\"message\":\"请求的资源类型找不到名为“{Undeployed_Database_Name}”的“Microsoft.Sql/servers/databases”。\"}}'。"}]}

{Undeployed_Database_Name} 与失败的部署的数据库名称有关。我假设在发生错误期间部署失败一定没有完全回滚,但我在任何地方都找不到这个数据库。任何帮助将不胜感激。

【问题讨论】:

    标签: azure-sql-database azure-resource-group


    【解决方案1】:

    您是否在 Portal 中执行了这些步骤?

    1. 点击您的 SQL Server 概览,移至另一个资源组:

    1. 检查要移动的 SQL 服务器中的所有资源。

    3.点击确定,等待移动完成。检查新资源组中的 sql server:

    希望这会有所帮助。

    【讨论】:

    • 感谢您努力发布屏幕截图和所有内容。是的,我已经尝试过了,但它会在第 2 步的验证步骤中失败一分钟左右。现在一切都解决了,因为我已经删除了数据库服务器并重新创建了它们。如果我在生产环境中,那将是一个相当困难的地方,但我们现在只是在探索 Azure。
    【解决方案2】:

    尝试改用 PowerShell。有时,门户暂时无法按预期工作。以下示例显示了如何将多个资源移动到新资源组。

    $webapp = Get-AzResource -ResourceGroupName OldRG -ResourceName ExampleSite
    $plan = Get-AzResource -ResourceGroupName OldRG -ResourceName ExamplePlan
    Move-AzResource -DestinationResourceGroupName NewRG -ResourceId $webapp.ResourceId, $plan.ResourceId
    

    您也可以使用 Azure CLI。

    webapp=$(az resource show -g OldRG -n ExampleSite --resource-type "Microsoft.Web/sites" --query id --output tsv)
    plan=$(az resource show -g OldRG -n ExamplePlan --resource-type "Microsoft.Web/serverfarms" --query id --output tsv)
    az resource move --destination-group newgroup --ids $webapp $plan
    

    您也可以按照here 的说明使用 REST API。

    【讨论】:

    • 我已经尝试过了,但它对我不起作用。由于我使用的是试用版,因此我只需删除我的数据库服务器并首先以正确的方式重新创建它们就没有问题。我仍然不确定最终发生了什么,但现在一切似乎都很好。很奇怪,我尝试了 PowerShell 并获得了我所有数据库的列表,而未部署的数据库从未出现过。我希望我知道发生了什么,但我现在是在正确的位置。谢谢!
    • 试用版有许多未知的限制,主要是按地区划分的。在 Eastus 上,您遇到的问题更少。很高兴知道你做得很好。
    【解决方案3】:

    我找到了解决此问题的方法,但它对于大多数情况并不理想。这样做似乎会出现问题:

    我创建了一个免费数据库(5 DTU 32 MB 数据库)。我尝试创建另一个免费数据库,但它失败了,可能是因为您不能拥有多个免费数据库。这个失败的部署最终导致了我遇到的问题。

    我最终删除了我试图托管两个免费数据库的 SQL Server。这样做后,我能够创建一个新的 SQL Server,它有一个基本数据库和一个没有问题的免费数据库。我什至将它们命名为与我之前尝试部署的名称相同,没有任何问题。我觉得这可能是部署失败时如何处理资源的错误,但我不能肯定地说,因为我是 Azure 的新手。只是想给你我所有的解决方案,但如果其他人遇到这个问题并以不同的方式解决它,我想在这里。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-13
      • 1970-01-01
      相关资源
      最近更新 更多