Автоматизация резервного копирования AzureSQL с использованием сценария powershell - PullRequest
0 голосов
/ 23 января 2019

Я пишу код для создания резервной копии SQL Azure в хранилище BLOB-объектов с помощью сценария powershell.Когда я запустил скрипт, он показывается в процессе, но через некоторое время, когда я зарегистрировался в контейнере BLOB-объектов, я не смог увидеть ни одного файла .bacpac (Backup).когда я пытаюсь снова запустить через некоторое время код, через некоторое время он выдаст ошибку, как показано ниже enter image description here

, но через некоторое время, когда я снова запускаю свой код, он успешно выполняется и статусбудет показывать "в процессе".но когда я проверяю под контейнером BLOB-файлов не будет никакого файла.пожалуйста, найдите скрипт ниже-

$subscriptionId = "*****"
$serverAdmin = '****'
$serverPassword = '****'
$securePassword    = ConvertTo-SecureString $serverPassword -AsPlainText -Force
$creds           = New-Object System.Management.Automation.PSCredential($serverAdmin, $securePassword)
$DatabaseName ='*****'
$ResourceGroupName='*****'
$ServerName='*****'

# Generate a unique filename for the BACPAC
$bacpacFilename = $DatabaseName + (Get-Date).ToString("yyyyMMddHHmm") + ".bacpac"

# Storage account info for the BACPAC
$BaseStorageUri = "https://*****.blob.core.windows.net/*****"
$BacpacUri = $BaseStorageUri + $bacpacFilename
$StorageKeytype = "StorageAccessKey"
$StorageKey = "*****"

New-AzureRmSqlDatabaseExport -ResourceGroupName $ResourceGroupName -ServerName $ServerName `
   -DatabaseName $DatabaseName -StorageKeytype $StorageKeytype -StorageKey $StorageKey -StorageUri $BacpacUri `
   -AdministratorLogin $creds.UserName -AdministratorLoginPassword $creds.Password

1 Ответ

0 голосов
/ 25 января 2019

У меня есть вопрос, пожалуйста, посмотрите на ваш код: enter image description here

Почему эти коды -DatabaseName $DatabaseName -StorageKeytype $StorageKeytype -StorageKey $StorageKey -StorageUri $BacpacUri String?

Затем выполняются New-AzureRmSqlDatabaseExport обязательно получит ошибку.Вы можете увидеть этот документ: New-AzureRmSqlDatabaseExport .

И еще одна ошибка:

Error encountered during the service operation. Blob https://****.blob.core.windows.net/*** is not writeable. The remote server returned an error: (404) Not Found. The remote server returned an error: (404) Not Found

Я думаю, что вы можете увидеть этот BLOB-объект в качестве ссылки: Blob не доступен для записи .Этот BLOB-объект имеет ту же ошибку, что и вы:

Error encountered during the service operation. Blob https://XXXXXXXXXX.blob.core.windows.net/XXXXX-container/ABC.bacpacklj1234klj12l3k4jl2k34jl2k3j4lk23j4l12k34jlk23j4lk23lk4j234A8i3t1GAs4Tvx2wjQRf7nTi/fM0+v7o7SWuUTU6WpRwO2SM0w== is not writeable. The remote server returned an error: (404) Not Found. The remote server returned an error: (404) Not Found.

И он наконец заработал: enter image description here

Надеюсь, это поможет вам.

...