tool

SQL Server Data Tools (SSDT) のプレビュー版で、2015年9月版がリリースされてました。

このバージョンでは、SQL Server 2016 CTP2.4とAzure SQL Databaseの新機能への対応、Visual Studio 2015での複数の言語へのローカライズ対応がされています。

ダウンロード

SQL Azure

SQL Server をコマンドラインで操作するためのコマンドsqlcmdとデータのバルクインサートをするためのコマンドラインツールbcpをLinuxで使用するための手順について説明します。

前提条件

  • コマンド操作元として、Ubuntu 14.04
  • 接続先として、SQL ServerかAzure SQL Database

インストール手順

インストールスクリプトをダウンロードします。

wget https://gallery.technet.microsoft.com/scriptcenter/SQLCMD-and-BCP-for-Ubuntu-c88a28cc/file/142121/1/Ubuntu%2014.04%20MSFT%20ODBC%20Driver.sh

SQLCMDとBCP、Linux ODBCドライバーをインストールします。

sudo bash Ubuntu\ 14.04\ MSFT\ ODBC\ Driver.sh 

ライセンス確認があるので、「YES」とタイプしておしまい。

image

利用手順

普通に使います。

image

sqlcmd -S xxxxxx.database.windows.net -U xxx -P xxxxxxxxx

bcp も同じですね。

imageimage

参考リンク

SQL Azure

SQL Server Data Tools (SSDT)は、Visual Studioに統合されたデータベースの開発支援ツールです。SQL Server Data Toolsのプレビュー更新2015年8月版では、インストーラーの変更とBusiness Intelligence(BI)ツールをVisual Studioに統合する機能追加がされました。

ダウンロード

概要

インストーラーが変更されてます

データベースツールは、SQL Server 2015からSQL Server 2016、Azure SQL Databasesをサポートしています。Business Intelligenceツールについては、SQL Server 2016には限定的な対応となっていますが、RTM時には対応します。

DBとBIに対応するインストーラーは、Visual Studio 2015のみの提供です。Visual Studio 2013に両方インストールするには、別々のインストーラー(SSDTとSSDT-BI)を使用してください。

参考サイト

SQL Azure

Azure SQL Elastic Database Poolでは、性能の下限と上限を選択し、突発的な負荷にも対応できるように柔軟な性能を得ることができます。詳細については、「Azure SQL DB – Elastic Database Poolについて」で紹介しています。

T-SQLでデータベースを作成する際に、Elastic Poolを指定できるようになりましたので紹介します。

SQL Elastic Database Poolの作成

今のところ、Elastic Database Pool事態は、事前にPortalで作成しておく必要がありそうです。T-SQLで、Elastic Database Poolを作成する構文はなさそう。

image

データベースの作成

CREATE DATABASE database_name
{
   ( [, ...n]) 
}
 ::= 
{
      MAXSIZE = { 100 MB | 500 MB | 1 | 5 | 10 | 20 | 30 … 150…500 } GB  
    | EDITION = { 'web' | 'business' | 'basic' | 'standard' | 'premium' } 
    | SERVICE_OBJECTIVE = { 'shared' | 'basic' | 'S0' | 'S1' | 'S2' | 'P1' | 'P2' | 'P3' | { ELASTIC_POOL(name = ) } } 
}

Elastic Database Poolに新しいデータベースを作成するためには、SERVICE_OBJECTIVEで、ELASTIC_POOL でプール名を指定します。次の例では、hogeがプール名となっており、「’」で括らずに指定します。

image

データベースの設定変更

ALTER DATABASE database_name 
{
    MODIFY NAME =new_database_name
  | MODIFY (  [, ... n] ) 
  | COLLATE collation_name
  | SET {  } 
}

 ::= 
{
      MAXSIZE = { 100 MB | 500 MB |1 | 5 | 10 | 20 | 30 … 150 … 500 } GB  
    | EDITION = { 'web' | 'business' | 'basic' | 'standard' | 'Premium' } 
    | SERVICE_OBJECTIVE = { 'shared' | 'basic' | 'S0' | 'S1' | 'S2' | 'P1' | 'P2' | 'P3' | { ELASTIC_POOL(name = ) } } 
}

Elastic Poolリソースの確認

論理サーバー上にあるすべてのElastic Database Poolの私用統計情報を返します。Elastic Database Pool毎に、5分間のCPU、IO、Log、ストレージ、リクエスト数、レスポンス数を提示します。

SELECT * FROM sys.elastic_pool_resource_stats 
ORDER BY end_time DESC;

image

参考サイト

SQL Azure

Azure SQL Database を使用する場合の推奨事項に、リトライロジックを組み込み、クエリ発行に失敗しても複数回リトライをするというものがあります。

実装方法としては、Entity Framework のリトライ機構を使用するか、自分自身で実装する方法の2種類あります。

今回紹介するのは、Azure のドキュメントに掲載されたサンプルです。MSDNのサンプルは、そこで説明したいことが明確になることを目的としていることが多く、そのまま使用できないことが多いです。しかし、今回紹介するのは、そのまま利用しやすいようになっています。

(発行クエリの定義方法については書き換えないと使えませんが。)