Я пытаюсь создать автоматический сценарий, который восстанавливается из последней резервной копии LTR базы данных сервера SQL Azure.
Используя эту команду:
az sql db restore --dest-name $newdbname --name $dbname--resource-group $resourcegroup --server $servername
В документации, похоже, нет способа указать, какую резервную копию использовать, кроме как с --time, но тогда вам нужно вручную указать строку datetime.
Есть ли способ автоматизировать это с помощью Azure CLI? Я знаю, что с помощью модуля PowerShell Az я могу перечислить все резервные копии и выбрать последнюю, но в этом случае я не могу использовать PS (Docker).
Отвечая на свой вопрос: похоже, в Azure CLI эта функция не реализована. Для этого можно использовать Powershell. Возможна автоматизация с помощью аутентификации сертификата субъекта-службы в Azure и командлетов для получения резервных копий:
$server = Get-AzSqlServer -ServerName $serverName -ResourceGroupName $resourceGroup
$ltrBackup = Get-AzSqlDatabaseLongTermRetentionBackup -Location $server.Location -ServerName $serverName -DatabaseName $OldDbName -OnlyLatestPerDatabase