Azure PowerShellでSQLデータベースのバックアップを取る

まずはバックアップの保管先となるストレージを把握する。

Get-AzureStorageAccount | Format-Table -auto "Label","Location"

> Label Location > > —– ——– > > hnkdev28 East Asia > > hnkstrg Japan East

この辺もわからないとだめ。

Get-AzureStorageKey -StorageAccountName "hnkdev28"

最終的にはこれが肝。Get-Credentailがポップアップダイアログを開く。そこでデータベースサーバに入るための認証情報を入れる。これはこれでよいが。。。

> C:\PS>$credential = Get-Credential

> C:\PS>$SqlCtx = New-AzureSqlDatabaseServerContext -ServerName $ServerName -Credentials $credential

> C:\PS>$StorageCtx = New-AzureStorageContext -StorageAccountName $StorageName -StorageAccountKey $StorageKey

> C:\PS>$Container = Get-AzureStorageContainer -Name $ContainerName -Context $StorageCtx

> C:\PS>$exportRequest = Start-AzureSqlDatabaseExport -SqlConnectionContext $SqlCtx -StorageContainer $Container -DatabaseName $DatabaseName -BlobName $BlobName' // BlobNameはファイル名ととらえてよい

> Get-AzureSqlDatabaseImportExportStatus -Request $exportRequest

マイクロソフト曰く、GUIDは把握していろとのことなので、下記のコマンドも控えておく。

$exportRequest.RequestGuid // Start-AzureSqlDatabaseExportで割り振られたGUIDが出る