【问题标题】:VSTS Azure PowerShell Task SQL Firewall rulesVSTS Azure PowerShell 任务 SQL 防火墙规则
【发布时间】:2017-08-31 18:31:05
【问题描述】:

我尝试从 VSTS 更新我在 SQL Azure 上的数据库。

我需要在迁移过程中应用防火墙规则,然后将其删除。

我正在使用 VSTS Azure PowerShell 任务,我已经对其进行了配置,并尝试使用此命令添加规则:

New-AzureSqlDatabaseServerFirewallRule -ServerName $serverName -RuleName $firewallRule -StartIpAddress $currentPublicIp -EndIpAddress $currentPublicIp

任务失败并显示以下错误消息:

##[error]No default subscription has been designated. Use Select-AzureSubscription -Default <subscriptionName> to set the default subscription.

任务从日志中的这个开始:

##[command]Add-AzureRMAccount -ServicePrincipal -Tenant ******** -Credential System.Management.Automation.PSCredential -Environment AzureCloud
##[command]Select-AzureRMSubscription -SubscriptionId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -TenantId ********

【问题讨论】:

  • 在 VSTS 中,您选择了 ARM 订阅,但 New-AzureSqlDatabaseServerFirewallRule 是经典 cmdlet。你应该使用New-AzureRmSqlServerFirewallRule -ResourceGroupName "" -ServerName "" -FirewallRuleName "Rule01" -StartIpAddress "192.168.0.198" -EndIpAddress "192.168.0.199"
  • 谢谢 Walter,只是想知道经典 cmdlet 应该被 ARM 弃用,还是两者各有优势?
  • 也许你可以参考这个link

标签: powershell azure azure-devops


【解决方案1】:

您应该对 SQL DB 使用 ARM cmdlet,而不是 ASM 之一。注意 cmdlet 中的 RM

New-AzureRmSqlServerFirewallRule
Set-AzureRmSqlServerFirewallRule

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-24
    • 2021-04-26
    • 1970-01-01
    • 2022-11-14
    相关资源
    最近更新 更多