AzureストレージへのSQL Serverデータベースのバックアップ

データセキュリティの面で本番データの場合、データの損失は深刻な影響を持っている可能性があり、非常に重要です。そして、障害やデータベースのバックアップデータベースとトランザクションログファイルに基づいて復元することができたときに発生する可能性がありますデータのバックアップコピーとして最小の時間損失の最も近い点に損傷しています。
従来のバックアップが懸念されるために、一般的にデータベースが復旧またはローカルディスク/テープ・ストレージにデータベースをバックアップするために、サードパーティ製のバックアップソフトウェアを使用して使用し、このアプローチのバックアップ前提はのための大規模なストレージプールのために必要です私たちのバックアップファイルを保存するために、バックアップファイルのライフサイクルによります。この手段は、我々は大規模なストレージ・プールを準備する必要があること。私はクラウドにデータベースをバックアップできるリソースを持っている必要があり、ストレージプールを準備する必要があり、非常に多くの小さなパートナーは確かに、聞いてきますが考慮して?答えは、あなたが得ることができるです。それでは、私たちは、クラウドがもたらすメリットに雲やバックアップにSQL Serverデータベースをバックアップする方法について話を一緒に働きます。
次のようにAzureストレージへのデータベースのバックアップの利点は次のとおりです。

  • 柔軟性、信頼性、無制限のオフサイトストレージ:マイクロソフトAzureブロブストレージバックアップサービスでは、便利で柔軟かつ簡単にアクセスオフサイト保管方法にもあります。ただ単純に既存のスクリプト/仕事を修正するだけで店の外のサイトを作成するためのSQL Serverバックアップ。離れて本番データベースからオフサイトストレージの場所は通常、災害が本番データベースのオフサイトと位置の両方に影響しないようにするために、位置すべきです。コピーブロブストレージの地理的領域を選択することで、災害時の保護の余分層よりは、地域全体に影響を与える可能性があります。また、バックアップコピーが利用でき、いつでも、どこでもあり、あなたは簡単に復元を実行するためにそれらにアクセスすることができます。
  • バックアップアーカイブ:ときに、一般的なテープ・ストレージ・メソッドの代わりに、より良い方法を提供することが可能なバックアップアーカイブは、Microsoft Azureブロブストレージサービス。実際のデータは、テープストレージの選択にオフサイト施設を輸送する必要があるかもしれないとメディアは、いくつかの保護対策を取る必要があります。マイクロソフトのAzure BLOBストレージエリアでは即時、可用性の高い、耐久性のアーカイブプログラムを提供することができ、バックアップを格納します。
  • いいえ、ハードウェア管理のオーバーヘッドません:マイクロソフトのAzureサービスに関連付けられていないハードウェア管理オーバーヘッド。マイクロソフトのAzureサービス管理ハードウェアおよびサポート冗長性を提供し、ハードウェア障害から保護するために地理的なレプリケーション。
  • マイクロソフトのAzureの仮想マシンを実行している現在のSQL Serverインスタンスの場合は、追加のディスクを作成して、Microsoft Azureブロブストレージサービスにバックアップすることができます。しかし、ディスクの数は、MicrosoftのAzureの仮想マシンに接続することができますが限られています。限界がある:使用可能であっても以下の16ディスク、磁気ディスクより小さい例に大型インスタンスまで。マイクロソフトのAzure BLOBストレージ領域への直接バックアップを可能にすることにより、あなたは限界に16枚のディスクをバイパスすることができます。
    また、現在のバックアップファイルは、ローカルのSQL Server、または他のSQL Serverがデータベースアタッチ/デタッチまたはダウンロードして追加のVHDを必要とせずに、マイクロソフトのAzureの仮想マシン上で実行されているため、直接のMicrosoft Azureブロブストレージサービスに保存されます。
  • 株式の費用:のみ使用されるサービスのために支払います。これは、プログラム外の費用対効果の高いバックアップアーカイブサイトとして使用することができます。

しかし、SQL ServerがAzureストレージ2012 SP1 CU2以降のデータベースSQL Serverにそのバックアップを確認する必要がありますのでご注意ください。

それを言って、Azureストレージにデータベースをバックアップする方法、一緒のを見てみましょう。
まず、ストレージアカウントを準備する必要があります。
AzureストレージへのSQL Serverデータベースのバックアップ

アクセスキーを取得し、この例では、我々はストレージアカウントにアクセスするためのアクセスキーの方法を使用します:
AzureストレージへのSQL Serverデータベースのバックアップ

アカウントを作成するために、SQLで次のT-SQLを使用します。

IF NOT EXISTS(SELECT * FROM sys.credentials

 WHERE credential_identity = ' bkuptour')

CREATE CREDENTIAL bkuptourl WITH IDENTITY = 'sql12bak', SECRET = '5amfZJpKLcR2lAfEBZod18VYbxZOPUbtKH9RowDQ3Ixv5sGMnSj5Lo/UbPb/zCCRKh/kAxnOaOS9oJELTVVoTg==';

作成したら、バックアップファイルを保存するための容器で保管アカウントを作成することができます。
AzureストレージへのSQL Serverデータベースのバックアップ

作成完了後にストレージアカウントに次のT-SQLデータベースのバックアップを使用することができます。

DECLARE @DB_name VARCHAR(50) -- database name 

DECLARE @BackupLoc VARCHAR(256) -- path for backup files 

DECLARE @BackupfileName VARCHAR(256) -- filename for backup 

DECLARE @fileDate VARCHAR(20) -- used for file name

-- specify database backup container location

SET @BackupLoc = 'https://sql12bak.blob.core.chinacloudapi.cn/test/' 

set @fileDate= replace(replace(convert(nvarchar(50),getdate()),' ','_'),':','_')

DECLARE db_cursor CURSOR FOR 

SELECT name FROM master.sys.databases WHERE database_id <>2 and state=0

OPEN db_cursor  

FETCH NEXT FROM db_cursor INTO @DB_name  

WHILE @@FETCH_STATUS = 0  

BEGIN  

       SET @BackupfileName = @BackupLoc + @DB_name + '_' + @fileDate + '.BAK' 

       BACKUP DATABASE @DB_name TO URL = @BackupfileName  WITH CREDENTIAL = 'bkuptourl',COMPRESSION 

          print 'BACKUP DATABASE '+@DB_name+ ' TO URL ='''+ @BackupfileName  +''' WITH CREDENTIAL = ''bkuptourl'',COMPRESSION '

       FETCH NEXT FROM db_cursor INTO @DB_name  

END  

CLOSE db_cursor  

DEALLOCATE db_cursor

AzureストレージへのSQL Serverデータベースのバックアップ

以下に示すようにバックアップが完了すると:
AzureストレージへのSQL Serverデータベースのバックアップ

おすすめ

転載: blog.51cto.com/wuyvzhang/2468327