SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

SQL Server 2014 の BLOB ストレージへの配置を使用したデータベースのアタッチ

leave a comment

以前、SQL Server 2014 のデータベースのファイルを BLOB に配置する構成について という投稿をしました。
この投稿ではデータベースを作成するパターンで記載したのですが、BLOB ストレージへの配置はデータベースのデタッチ/アタッチ方式でも使用することができます。

今回の投稿ではこの方法をまとめてみたいと思います。

技術情報については レッスン 6: 内部設置型のソース コンピューターから Windows Azure のターゲット コンピューターにデータベースを移行する が参考になります。

基本的な作業の流れは、前回の投稿と変わりません。

資格情報を作成して、データベースを [FOR ATTACH] で [CREATE DATABASE] すればアタッチすることができます。

注意点としては BLOB へアップロードする際にファイルは [ページ BLOB] でアップロードするということでしょうか。
ブロック BLOB でアップロードしたファイルをアタッチしようとすると、

メッセージ 5120、レベル 16、状態 142、行 13
物理ファイル https://<BLOB URL>/SQL2012DB.mdf を開けません。オペレーティング システム エラー 12150: "12150(failed to retrieve text for this error. Reason: 317)"。

 

というようなエラーが発生します。
これについては Migrate data files from existing database to Azure に情報が公開されています。
CodePlex の Azure Storage Explorer でファイルをアップロードした場合は、ブロック BLOB でアップロードされます。
ページ BLOB でアップロードをする場合は CloudXplorer を使用するとよいかと。
Freeware Version でもページ BLOB でアップロードすることができます。
image

BLOB ストレージにファイルを格納した場合の形式はページ BLOB になりますので、ブロック BLOB でアップロードしたファイルを操作使用とした場合は上記のエラーが発生します。

データベースのデタッチ / アタッチによるデータベースのコピーは下位バージョンのデータベースの移行でも使用することができます。
SQL Server 2014 の場合は、SQL Server 2005 以降の互換性レベルをサポートしていますので、SQL Server 2005 のデータベースをデタッチ / アタッチで Azure の仮想マシンに移行をすることも可能です。
image

BLOB ストレージを使用したバックアップ/リストアや MicrosoftR SQL ServerR Backup to Microsoft WindowsR AzureRTool を使用して、効率的な移行を検討したいものです。

Share

Written by Masayuki.Ozawa

5月 11th, 2014 at 10:18 pm

Posted in SQL Server

Tagged with ,

Leave a Reply