前回の続きです。Microsoft Azure(以下、Azureと表記します。)のSQLデータベース(以下 SQLDBと表記します。)を使ってみます。毎回のように書いていますが手順は一つの方法ですので例として考えて頂ければと思います。
1.ローカル環境のSQLServer2012にデータベースとテーブルを作成
2.ローカル環境のSQLServer2012を利用するASP.NETサイトを作成
3.AzureでSQLDBのデータベースを作成
4.SQLServerのデータベース全体をAzureのSQLDBへ移行(発行)
5.ASP.NETサイトをAzureへ移行(発行)
6.AzureでASP.NETサイトの動作確認
以上が全体の手順ですが、今回は、3からです。それでは、今回の内容です。
3.AzureでSQLDBのデータベースを作成
Azureの管理画面からデータベースを作成します。
上記の画面が出てきたら、必要に応じて任意の内容を入力して下さい。入力したデータベースサーバへのログイン名、パスワードはもちろん控えておいてください。これでデータベースが出来ると思います。次に作成したデータベースを選択して下さい。以下のような画面になると思います。
ここで上の画像のように、このIPアドレス用にWindows Azureファイアウォール ルールを設定する を選択して下さい。この設定で、現在作業しているPCからSQLDBにアクセス出来るようになります。この設定を行わないと作業中のPCからアクセス出来ないので確実に設定します。
次にこの画面の下部分で、データベースのサーバ名に注目して下さい。以下では、わざと白くしている部分です。これを控えておいてください。
以上でAzureの管理画面での作業は終了です。これで、AzureでSQLDBのデータベース作成は完了です。
4.SQLServerのデータベース全体をAzureのSQLDBへ移行(発行)
次は、Microsoft SQL Server Management Studio(以下、SQLServerMSと表記します。)での作業です。
前回作成した、ローカルのDBをAzureへ移行します。(細かいことですが、移行、発行、配置という言葉が出てきますがほぼ同様の意味で使っています。ご了承ください。)
SQLServerMSで作成したDBを選択して右クリックのメニューで以下のように選択します。もし、このメニューが出てこない場合は、SQLServerMSのバージョンが古い可能性が考えられます。確認して下さい。
接続を選択します。SQLServerMSの接続画面が表示されると思いますので、ここで、3.の作業で作成したデータベースサーバ名とユーザ名、パスワードを入力して接続して下さい。接続が完了したら、次へと完了で進めて下さい。(※ここの画面は省略します。)無事に完了すると以下のような画面になると思います。
これで、Azureの管理画面からも作成したデータベースが確認出来るかと思います。以上で、AzureのSQLDBへ移行は完了です。
5.ASP.NETサイトをAzureへ移行(発行)
次に4.で作成したデータベースを利用するASP.NETサイトをAzureへ移行します。
まず、Azureの管理画面で4.で作成したデータベースの接続文字列を確認します。以下の画面で、サーバ名の上の、ADO.Net、ODBC、PHP、および JDBC の SQL データベース接続文字列を表示する で確認します。ここでは、ADO.Netです。
ここから、Visual Studio 2013での作業です。移行対象のASP.NETサイトのプロジェクトを開きます。
Web.configのconnectionStringsを書き換えます。通常、ここにデータベースの接続先が指定されていると思いますのでここを4.で作成したデータベースに接続するように書き換えます。上で取得した接続文字列に書き換えます。文字列が正しければここまま実行出来るはずです。実行して確認します。
実行が確認出来たらAzureへ移行します。移行の方法は、ここのページで書いた方法で出来ますが、データベースの接続文字列の指定だけは必要です。以下ではWeb.configにローカル用の接続文字列を残している状態です。
これで、ASP.NETサイトをAzureへ移行出来るかと思います。
6.AzureでASP.NETサイトの動作確認
最後にAzureで5.で移行したサイトの確認をします。以下のようにローカルと同様に実行出来ました。
以上で、Azureでの公開は完了です。
最後に感想ですが、開発環境からダイレクトに移行出来るのが何といっても楽に感じました。これならサンプルサイト、デモサイトも公開しやすいと思いました。