ODBC Driver for Acumatica

Build 20.0.7587

リンクサーバーの作成

このセクションでは、リンクSQL サーバーインスタンスを構成および作成する方法について説明します。

リンクサーバーの利点

SQL リンクサーバーを使用してCData SQL Gateway に接続できます。SQL Server は、CData SQL Gateway をリンクSQL Server インスタンスとして扱うため、ODBC データソースに直接接続する場合のようにパフォーマンスを低下させることなく、Acumatica データをクエリする完全なSQL クエリを記述することができます。接続は、ローカルで行うことも、別のマシンにあるGateway に行うこともできます。

リンクサーバーの設定

SQL Gateway 管理ツールでODBC データソースへのリモートアクセスを設定する手順は次のとおりです。

  1. プロキシサービスを[Services]タブで設定します。
  2. データベースユーザーを[Users]タブで設定します。
  3. TLS/SSL を[Other]タブで設定します。
  4. Tunneling を設定して、ファイアウォールの背後でホストされているサービスにアクセスします。

UI からのリンクサーバーの作成

SQL Server Management Studio のUI からリンクサーバーを作成するには:

  1. SQL Server Management Studio を開き、SQL Server のインスタンスに接続します。
  2. [サーバーオブジェクト]ノードを展開して[リンクサーバー]を右クリックし、[新しいリンクサーバー]をクリックします。[新しいリンクサーバー]ダイアログが表示されます。
  3. [全般]セクションで、リンクサーバーに名前を付け、[その他のデータソース]を選択して次の情報を入力します。
    • プロバイダー: お使いのSQL Server のバージョンに対応するSQL Server Native Client Provider を選択します。例えば、SQL Server Native Client 11.0 です。
    • データソース: サービスが実行されているホストとポートをカンマで区切って入力します。例えば、"localhost,1434" です。SSH Tunnel を介してオフネットワーク接続する場合は、SSH ホストのホストとポートを入力します。Data Source input の"localhost" の値は、SQL Server が実行されているマシンを参照するため、SQL Server と別のマシン上のManagement Studio でリンクサーバーを作成する際には注意が必要です。
    • カタログ: カタログとしてシステムDSN を入力します。例、"CData Acumatica Sys"
  4. [セキュリティ]セクションで、[このセキュリティコンテキストを使用する]を選択し、SQL Gateway 管理コンソールの[SSH Tunnel]タブで許可したユーザーのユーザー名とパスワードを入力します。

プログラムによるリンクサーバーの作成

リンクサーバーは、SQL Server Management Studio のUI を使用して作成できるだけでなく、ストアドプロシージャを使用して作成することもできます。リンクサーバーを作成するには、次の入力が必須です。

  • サーバー: リンクサーバー名。
  • プロバイダー: SQL Server Native Client Provider に"SQLNCLI" を入力します。
  • Datasrc: サービスが実行されているホストとポート(カンマ区切り)。datasrc input の"localhost" の値は、SQL Server が実行されているマシンを参照するため、SQL Server と別のマシン上のManagement Studio でリンクサーバーを作成する際には注意が必要です。
  • カタログ: サービスに設定されたシステムDSN を入力します。
  • Srvproduct: データソースのプロダクト名を入力します。これは、 "CData SQL Gateway" のような任意の値、または空の文字列に設定できます。

リンクサーバーを作成しSQL Gateway への認証を設定するには:

  1. sp_addlinkedserver を呼び出してリンクサーバーを作成します:
    EXEC sp_addlinkedserver @server='Acumatica',
      @srvproduct = '',
      @provider='SQLNCLI',
      @datasrc='<Machine IP address>,1434',
      @catalog='CData Acumatica Sys';
    GO
  2. sp_addlinkedsrvlogin を呼び出して、SQL Server ユーザーがサービスの正規ユーザーの認証情報に接続できるようにします。サービスへの接続に使用する認証情報は、SQL Gateway 管理ツール内のUsers タブで定義したユーザーにマップしている必要があることに注意してください。
    EXEC sp_addlinkedsrvlogin @rmtsrvname='Acumatica',
      @rmtuser='admin',
      @rmtpassword='test',
      @useself='FALSE',
      @locallogin=NULL;
    GO

SQL Server Management Studio から接続

SQL Server Management Studio は、ODBC ドライバーがインプロセスで使われることを要求するSQL Server Client OLE DB プロバイダーを使います。SQL Server Management Studio からリンクサーバーへクエリを実行するには、Management Studio のSQL Server Client Provider でAllow inprocess オプションを有効にする必要があります。これを行うには、[Server Objects]->[Linked Servers]->[Providers]で、使用しているプロバイダーのプロパティを開きます。

Copyright (c) 2020 CData Software, Inc. - All rights reserved.
Build 20.0.7587