Microsoft SQL Server

この記事では、Tableau を Microsoft SQL Server データベースに接続し、データ ソースを設定する方法について説明します。

注: Microsoft SQL Server Parallel Data Warehouse (PDW)、Microsoft Azure Synapse Analytics (旧称 Azure SQL Data Warehouse)、Microsoft Azure SQL Database に接続するには、Microsoft SQL Server コネクタを使用します。

はじめる前に

開始する前に、次の接続情報を収集します。

  • 接続するサーバーの名前
  • (オプション) 既定以外のポートに接続する場合はポート番号
  • (オプション) 含まれているデータベースに接続するには、データベース名
  • 認証方法: Windows 認証またはユーザー名とパスワード
  • SSL サーバーに接続している場合
  • コミットされていないデータを読み取れるようにデータベースの分離レベルを設定しますか。
  • (オプション) Tableau が接続するたびに初期 SQL ステートメントを実行する

必要なドライバー

このコネクタにはデータベースとやり取りするためのドライバーが必要です。ドライバーがコンピューターにインストールされていない場合、Tableau によって「ドライバー ダウンロード」(新しいウィンドウでリンクが開く)ページへのリンクを含むメッセージが接続ダイアログ ボックスに表示されます。このページで、ドライバーのリンクとインストール手順を確認できます。

接続してデータ ソースを設定する

  1. Tableau を起動し、[接続] の下で [Microsoft SQL Server] を選択します。データ接続の完全なリストについては、[サーバーへ][詳細] を選択します。その後、次を実行します。

    1. 接続するサーバー名を入力します。

      既定以外のポートに接続するには、サーバー名を入力する際に <server name>, <port number> の形式を使用します。たとえば、ExampleServer, 8055

    2. (オプション) 含まれているデータベースに接続するには、データベース名を入力します。

    3. サーバーにサインインする方法を選択します。Windows 認証を使用するか、特定のユーザー名とパスワードを使用するかを指定します。サーバーがパスワードで保護されていて Kerberos 環境でない場合、ユーザー名とパスワードを入力する必要があります。

      SSL サーバーに接続する場合は、[SSL が必須] チェック ボックスをオンにします。

    4. [コミットされていないデータの読み取り] を行うかどうかを指定します。このオプションを使用すると、コミットされていないデータを読み取る分離レベルで実行できます。抽出更新など他のトランザクションからのクエリの実行時間が長いと、データベースがロックされ、Tableau のトランザクションが遅延する場合があります。このオプションをオンにすると、他のトランザクションによって変更された行がコミットされていなくてもクエリで読み取ることができます。このオプションをオフにすると、Tableauによりデータベースで指定された既定の分離レベルが使用されます。

    5. (任意) ワークブックを開いたときや、抽出を更新、Tableau Server にサインイン、または Tableau Server にパブリッシュするときなど、毎回接続の始めに実行する初期 SQL コマンドを指定するには、[初期 SQL] を選択します。詳細については、初期 SQL の実行を参照してください。

    6. [サインイン] を選択します。

      Tableau が接続できない場合は、認証資格情報が正しいことを確認します。引き続き接続に失敗する場合は、コンピューターにおけるサーバーの検出に問題があります。サポートが必要な場合は、ネットワーク管理者またはデータベース管理者にお問い合わせください。

  2. データ ソース ページで次の手順を行います。

    1. (任意) ページ上部にある既定のデータ ソース名を選択し、Tableau で使用する一意のデータ ソース名を入力します。たとえば、データの他のユーザーが、どのデータ ソースに接続するか推測するのに役立つ命名規則を使用します。

    2. [データベース] ドロップダウン リストからデータベースを選択するか、テキスト ボックスを使用して名前でデータベースを検索します。

    3. [表] で、表を選択するかテキスト ボックスを使用して、名前で表を検索します。

      データベース内のストアド プロシージャを指定することもできます。SQL Server データベース固有の制約の一覧など、ストアド プロシージャの詳細については、ストアド プロシージャの使用を参照してください。

    4. キャンバスに表またはストアド プロシージャをドラッグし、シート タブを選択して分析を開始します。

      また、カスタム SQL を使用して、データ ソース全体ではなく、特定のクエリに接続します。詳細については、カスタム SQL クエリへの接続を参照してください。カスタム SQL を使用して、Microsoft SQL Server の空間列に関する高度な空間分析を行うことができます。詳細については、カスタム SQL および RAWSQL を使用した高度な空間分析の実行を参照してください。

注: Tableau Desktop では、Microsoft SQL Server の TIME データ型はサポートされていません。このデータ型のフィールドはインポートされておらず、Tableau Desktop に表示されません。ストアド プロシージャに含まれている場合、TIME データ型のフィールドは Tableau Desktop に表示されません。詳細については、ストアド プロシージャの使用を参照してください。

Mac でのサインイン

Mac で Tableau Desktop を使用する場合、サーバー名を入力して接続するときに、mydb または mydb.test などの相対ドメイン名の代わりに mydb.test.ourdomain.lan などの完全修飾ドメイン名を使用します。

また、Mac コンピューターの [検索ドメイン] リストにドメインを追加し、接続する際には、サーバー名のみを提供する必要があります。[検索ドメイン] リストを更新するには、[システム環境設定] > [ネットワーク] > [詳細] に移動し、[DNS] タブを開きます。

高可用性クラスターへの接続

高可用性クラスタの一部である SQL サーバーに接続する場合、MultiSubnetFailover パラメーターを使用するように接続をカスタマイズするのが役に立つ場合もあります。接続が切断された場合、このパラメーターを使用すると、接続が確立するまでサーバーの指定されたすべての IP アドレスへの接続が試行されるため、接続をより迅速に再確立できます。

これを行うには、TDC ファイルを作成 (または既存の TDC ファイルを更新) して、使用する接続文字列と ODBC extras のカスタマイズを行います。次のカスタマイズを含める必要があります。

<customization name='odbc-connect-string-extras' value='MultiSubnetFailover=yes;' />

SQL Server 接続でこのオプションを構成する方法については、「ネイティブ コネクタの接続文字列をカスタマイズする」と「接続のカスタマイズと微調整」を参照してください。

高可用性クラスターへの接続を最適化する方法については、「SQL Server の高可用性、ディザスター リカバリーに関するサポート」を参照してください。

: Tableau Server で ODBC 追加カスタマイズを使用する場合、パラメーター (この場合は MultiSubnetFailover) を ODBC extras の許可リストに加える必要があります。手順については、「ネイティブ コネクタの接続文字列をカスタマイズする」を参照してください。Tableau Desktop から TDC を含むワークブックをパブリッシュする場合、Tableau Cloud では、このドライバー プロパティはすでにサポートされています。

「ワークシートを利用できません」エラー メッセージの解決

ワークブックを開くと、「ワークシートを利用できません」エラー メッセージが表示され、その後に [接続の編集] を選択すると、サインイン認証資格情報を提供するよう求められます。このエラーは、次の 2 つのうちいずれかの状況で表示されます。

  • ワークブック内で使用されているデータ接続へのアクセス権を持っていない場合。

  • 認証資格情報が無効な場合 (パスワードの期限が切れているなど)。

解決するには、サインイン認証資格情報が正しいことを確認します。その場合は、データ接続へのアクセスについて Tableau 管理者にお問い合わせください。

 

関連項目

データベースの空間データへの接続

フィードバックをお送りいただき、ありがとうございます。フィードバックは正常に送信されました。ありがとうございます!