1.21 jigowatts

Great Scott!

Azure SQLデータベースに接続

概要

Microsoft Azureの無料試用版サブスクリプションを契約して早2週間が経過してしまいました!もっとぶん回してみたかったのですが全然できてない、時間ない、焦る!

ということで、今回はAzureのSQLデータベースを利用してみます。

Azure SQLデータベースサービスはAzure上のSQL ServerということでPaaSですね。VisualStudioからも作成できたのですが、価格レベルとかが選べず、細かい設定などは後で管理ポータルからやってねって感じだったので、最初から管理ポータルで作成しておくことにしました。

SQLServerの新規作成


Azureの管理ポータルにログインしたら、ハブメニューからSQLデータベースを開き[追加]を選択します。
f:id:sh_yoshida:20160514225201p:plain

データベース名などを入力していきます。今回はソースにAdventureWorksのサンプルデータベースを選択しました。
f:id:sh_yoshida:20160514225213p:plain

サーバーの構成では新規作成しました。この工程はDBサーバーを構築してSQLServerインスタンスを作成してる感じですかね。
f:id:sh_yoshida:20160514225226p:plain

サーバーの構成から戻って、デフォルトの価格レベルを[Basic]に変更しました。一番安くてこの値段なので、無料試用版サブスクリプションの有効期限が切れたらお金払わないとデータベースは使えませんね。。月600円程度であれば払っちゃおうかなぁという気にもなりますが、機能的に十分なのか今後検証してみたいです。
f:id:sh_yoshida:20160514225243p:plain

作成ボタンを押して10分くらいでSQLデータベースが利用できるようになりました!サーバー用意してSQLServerインストールしてってことを考えると恐ろしく早いですね。
f:id:sh_yoshida:20160514225429p:plain

ファイアウォールの設定

データを保護するため、SQL Database ファイアウォールは、どのコンピューターに権限を持たせるかを指定するまで、SQL Database サーバーへのすべてのアクセスを遮断します。ファイアウォールは、各要求の送信元 IP アドレスに基づいてデータベースへのアクセス権を付与します。

SQL データベース ファイアウォールの構成 | Microsoft Azure

基本的にすべてのIPをはじくので、開発時はローカルなどから接続できるように許可する必要があるようです。
そのためファイウォールの設定でクライアントIPアドレスを登録してあげるのですが、ファイアウォールの設定がどこにあるのかわかりにくい!

SQLデータベースの画面でサーバー名のとこを選択します。
f:id:sh_yoshida:20160514225257p:plain

そうするとSQL Serverの画面が開き、[ファイアウォールの設定の表示]で設定ができます。[クライアントIPの追加]を押下したら必ず[保存]を。クライアントIPアドレスが動的に変わる場合は範囲指定しておきましょう。
f:id:sh_yoshida:20160514225306p:plain

SQL Server Management Studioから接続

SSMSから接続するのに必要な情報は、サーバー名、サーバー管理者(ログイン)、パスワードです。これらの情報はそろっているので早速接続してみます。
f:id:sh_yoshida:20160514225453p:plain

作成したデータベースにAdventureWorksサンプルデータベースの内容が登録されてますね!
f:id:sh_yoshida:20160514225518p:plain

次回はアプリからAzure SQLデータベースに接続してみたいと思います。
SQLデータベース画面から[データベース接続文字列の表示]でADO.NETODBCの接続文字列がコピーできるので、これを使うだけでOKそうですが(。•̀ᴗ-)✧
f:id:sh_yoshida:20160514225442p:plain