SQL Server 2012 SP1 CU2 から、Backup to URL という機能がサポートされ、SQL Server のバックアップを Azure BLOB ストレージ上に直接取得することができるようになりました。
SQL Server 2012 / 2014 での実装では、ページ BLOB に対しての取得であり、制限事項 に記載されているようにストライピングでの取得ができないため、バックアップファイルの最大サイズは 1TB までとなります。
SQL Server 2012 ではバックアップの取得は次のようなクエリとなります。
CREATE CREDENTIAL azurestorage WITH IDENTITY = '<ストレージアカウント名>' , SECRET = '<アクセスキー>' ; BACKUP DATABASE AdventureWorks2012 TO URL = 'https://xxxxx.blob.core.windows.net/backup/adventureworks2012.bak' WITH CREDENTIAL='azurestorage',STATS=10
今回、Windows Server 2008 + SQL Server 2012 SP4 の環境を使用していたのですが、デフォルトの状態では、次のエラーが発生して、バックアップを取得できませんでした。
メッセージ 3271、レベル 16、状態 1、行 4 A nonrecoverable I/O error occurred on file "https://xxxxxx.blob.core.windows.net/backup/adventureworks2012.bak:" Backup to URL received an exception from the remote endpoint. Exception Message: リモート サーバーがエラーを返しました: (400) 要求が不適切です. メッセージ 3013、レベル 16、状態 1、行 4 BACKUP DATABASE is terminating abnormally.