【问题标题】:Azure CLI SQL DB Restore time formatAzure CLI SQL DB 还原时间格式
【发布时间】:2019-11-20 01:10:44
【问题描述】:

我正在使用 Azure CLI 编写一个 Powershell 脚本来执行 Azure SQL 实例还原。到目前为止,这是我的脚本:

az login

$AzureSubscription = "SubscriptionName"
az account set --subscription $AzureSubscription

$RGName = "ResourceGroupName"
$SrvName = "AzureSQLServerName"

$RestoreDateTime = (Get-Date).ToUniversalTime().AddHours(-1).ToString()
$RestoreDateTimeString = (Get-Date).ToUniversalTime().AddHours(-1).ToString("yyyy-MM-dd_HH:mm")
$RestoreName = $SrvName + "_" + $RestoreDateTimeString

az sql db restore --dest-name $RestoreName --resource-group $RGName --server $SrvName --name $SrvName  --time = $RestoreDateTime

当我运行它时,我收到以下错误:

az: error: unrecognized arguments: 7/10/2019 10:39:21 AM
usage: az [-h] [--verbose] [--debug]
          [--output {json,jsonc,table,tsv,yaml,none}] [--query JMESPATH]
          {sql} ...

我尝试了多种日期时间格式,但似乎无法让其中任何一种工作。是否需要特定的格式?我应该将不同的值传递给时间吗?任何帮助将不胜感激。

【问题讨论】:

    标签: azure powershell azure-sql-database azure-cli


    【解决方案1】:

    据我所知,--time 参数希望将日期时间格式化为“可排序日期/时间模式”(yyyy-MM-ddTHH:mm:ss)。

    应该这样做:

    $RestoreDateTime       = (Get-Date).ToUniversalTime().AddHours(-1)
    $RestoreDateTimeString = '{0:yyyy-MM-dd_HH:mm}' -f $RestoreDateTime
    $RestoreName           = '{0}_{1}' -f  $SrvName, $RestoreDateTimeString
    
    # format the datetime as Sortable date/time pattern 'yyyy-MM-ddTHH:mm:ss'
    # see: https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-date-and-time-format-strings
    $azRestoreTime         = '{0:s}' -f $RestoreDateTime
    
    az sql db restore --dest-name $RestoreName --resource-group $RGName --server $SrvName --name $SrvName  --time $azRestoreTime
    

    希望有帮助

    【讨论】:

    猜你喜欢
    • 2021-09-05
    • 1970-01-01
    • 2015-07-11
    • 2010-09-29
    • 1970-01-01
    • 1970-01-01
    • 2011-12-12
    • 2019-05-28
    • 2016-05-24
    相关资源
    最近更新 更多