Azureの小ネタ (改)

~Azureネタを中心に、色々とその他の技術的なことなどを~

データベースのバックアップ先にBLOBを指定する

SQL Server 2012 SP1 以降から、データベースのバックアップ先にBLOBを指定することができるので、ためしてみました。

環境

試した環境は以下の通り。ちなみにSQL Serverは、Express版でも大丈夫です。

  • Windows Server 2012 R2
  • SQL Server 2014 Express

Azureのストレージアカウントは予め作成しておきましょう。

Credential

初めに、認証情報を定義しておく必要があります。以下の、CREATE CREDENTIAL で、認証情報を定義します。

CREATE CREDENTIAL mycredential WITH 
IDENTITY = 'ストレージアカウント',
SECRET = 'アカウントキー' ;

以下のテーブルをみると、情報が確認できます。

SELECT * FROM sys.credentials

バックアップ

いくつか制限がありますが、代表的な物として、

  • 1TB以上はバックアップできない
  • 追記付加、WITH FORMATオプションで上書きできる。

試しに、Hogeデータベースをバックアップする場合は以下の取りとなります。コンテナは予め作っておかないとエラーがでました。

BACKUP DATABASE Hoge
TO URL = 'https://somestorageaccount.blob.core.windows.net/mycontainer/Hoge.bak'  
      WITH FORMAT, CREDENTIAL = 'mycredential' 
     ,STATS = 5 ;
GO 

参考URL