从Azure SQL Server名称查找Azure ResourceGroup
问题描述:
我正在尝试编写一个将BACPAC部署到Azure数据库的powershell脚本。我在微软网站上发现这个example从Azure SQL Server名称查找Azure ResourceGroup
我不必问使用Powershell的SQL Server所在的资源组,是否有可能找到SQL服务器驻留的资源组,如果你只知道服务器名称?
答
试试这个:这样做的
$resourceGroupName = (Get-AzureRmResourceGroup | Get-AzureRmSqlServer | where {$_.ServerName -eq 'Your Server Name Here'}).ResourceGroupName
答
不是真的比任何院长的更好或更差,但使用通用的cmdlet(将任何工作resourceType为):
(Get-AzureRmResource | Where-Object {$_.ResourceType -eq "Microsoft.Sql/servers/databases" -and $_.ResourceName -eq "$svr/$db"}).ResourceGroupName
+0
为什么要使用Get vs Find?对于部署了许多资源的订阅似乎效率低下。 – CtrlDot
+0
没有任何更好或更坏 - 一个处理客户端(Get),一个处理服务器(Find)... –
没想到你能有重复的服务器名称,但会注意那。感谢你的回答。 –
啊,你对Azure SQL不可能使用的重复名称是正确的。我一定在考虑其他资源类型,其中每个地区或订阅的名称是唯一的。 –