Free Trial

ナレッジベース

エキスパートから学ぶ。

サーバー/スケジューラとローカルマシン間のデータ接続を管理する

Community_Admin
Alteryx
Alteryx
Created

ワークフローの作成では、ユーザーはデータベース接続を含むワークフローをサーバーあるいはスケジューラにプッシュする必要があります。  正しく設定されていない場合、これがよくあるエラーの原因になります。

 

サンプルエラー:

  • エイリアスを翻訳できない
  • データソース名が見つからず、またデフォルトドライバが指定されていない
  • アクセス許可エラー

データベース接続を設定するために、スケジューラとサーバーがどのように動作するか復習しましょう。

 

ワークフローを公開またはスケジュールするとき、どのユーザーがそのワークフローを実行し、またこれに対応するために接続をどのように設定すればよいですか?

 

ワークフローを Alteryx Designer のローカルで実行するとき、その時にログインしているユーザーとして実行します。  そのワークフローをスケジュールまたはサーバーにプッシュするときは、ローカルシステムアカウントとして実行します(ログインしているユーザーではなく)。  Windows 認証を使用してデータベースを設定すると、ワークフローは基本的にサーバー上で別のユーザーとして実行されるため、つまり認証を受けられず、エラーとなります。 

 

これに対処するには、データベースのローカルシステムアカウントの許可を DBA に申請するか、Alteryx のシステム設定で Run As ユーザーを設定します。  Run As ユーザーを設定することで、ワークフローは別の資格情報で実行できるようになります。実行資格情報は、いちかばちかのソリューションで、設定すると、すべてのワークフローが特定のユーザーとして実行されることにご注意ください。  これについて詳細は、こちらこちらでご覧ください。  Alteryx Server の最近のバージョンでは、サーバー管理者に設定を確認させ、ユーザーがギャラリーで実行する時にワークフローごとに Run As を設定することができます。  このオプションの詳細はこちらをご覧ください。 

 

ドライバをどのように設定すればよいですか? 

 

Alteryx でデータベースに接続するために、対応ドライバをインストールする必要があります。  お客様固有のデータベース用対応ドライバの検索は、Alteryx の技術仕様ページでお客様のデータベースをクリックします。  データベースの対応バージョンも合わせてご用意ください。

 

ドライバは、ローカルマシンおよびサーバーにインストールされ、同じドライバである必要があります。  例えば、ローカルマシンでSQL Server Native Client 11 を使用して SQL Server に接続する場合、そのサーバーもSQL Server Native Client 11を使用していなければなりません。  お客様のサーバーに複数のワーカーがあり、それぞれがドライバを持たなければならない場合にもご注意ください。

 

接続をどのように設定すればよいですか?

 

DSN 接続

Alteryx で接続文字列を設定する方法は2つあります。  最も一般的で簡単な方法は、DSN を参照する接続方法です。  これは Alteryx で「デフォルト」に設定されている接続方法です。  文字列が DSN を参照しているかは、通常は「DSN」という言葉が含まれているのでわかります。 

 

例:"odbc: DSN=MYSQL_PROD_DB"

 

接続文字列を確認するには、DB に接続した後にデータ入力ツールを確認するか、オプション> アドバンスオプション> データ接続の管理へ進み、保存されている接続を表示します。

 

サーバーまたはスケジューラで DSN 接続を使用したい場合、DSN と全く同じ名前がサーバーに存在しているか確認してください。 

 

さらに、「Run As」ユーザーとしてログインしていない限り、ユーザー DSN の設定に注意を払う必要があります。  ユーザー DSN を Run As アカウントを含めた全ユーザーに設定する場合も、全ユーザーに有効なシステム DSN 接続を Alteryx で作成することができます。  データ接続の管理インターフェイスを介して Alteryx に保存するシステム接続を作成するときは、そのオプションを表示するために管理者として Alteryx を実行する必要があります。

 

DSN-Less 接続文字列

 

DSN を設定したくない場合、DSN レス接続文字列を利用することができます。  これを行うには、接続文字列に関する知識が必要です。あるいはお客様の DBA にヘルプを依頼する必要があります。  文字列を書くときに、こちらが良い参考になります。connectionstrings.com  このような文字列を書くとき、Alteryx での設定方法と、サイトが示していることとの唯一の違いは、odbc:(odbc) またはodb:(oledb) を文字列の始めに加える必要があることです。

 

以下は SQL Server 用の DSN レス接続文字列の例です(SQL Server Native Client 11 driver を使用していると仮定しています)


Standard security example

odbc: Driver={SQL Server Native Client 11.0};Server=myServerAddress;
Database=myDataBase;Uid=myUsername;Pwd=myPassword;

Trusted Connection example

odbc: Driver={SQL Server Native Client 11.0};Server=myServerAddress;
Database=myDataBase;Trusted_Connection=yes;

 

ユーザーに共有されるギャラリーデータ接続はどのように行われますか?

 

一般的に、ユーザーに共有する場合として文字列を書けるのであれば、DSN レス文字列がギャラリーデータ接続への最も簡単な対応方法です。正しいドライバさえインストールされていれば問題ありません(DSN をセットアップする必要はありません)。  DSN を参照するギャラリー接続を使用する場合、ユーザーは同じ名前の DSN を設定する必要があることを必ずユーザーに通達してください。 

 

また、データベースに Windows 認証を使用している場合、サーバーで Run As ユーザーによるギャラリーデータ接続を必ず共有してください。

 

最後に、サーバーマシンが共有の接続を受け取ることができるようにギャラリーに「サインイン」していることを確認してください。