HeidiSQL で MySQL 経由でApprovalMax のデータにアクセス

Mohsin Turki
Mohsin Turki
Technical Marketing Engineer
CData ODBC ドライバーと SQL Gateway を使用して、HeidiSQL からリアルタイムのApprovalMax データに接続・クエリする方法を解説します。

HeidiSQL は、MariaDB、MySQL、SQL Server、PostgreSQL をネイティブでサポートするオープンソースのデータベース管理ツールです。 CData API Driver for ODBC と SQL Gateway を組み合わせることで、HeidiSQL からリアルタイムのApprovalMax データにもアクセスできるようになります。この記事では、オンプレミスの ApprovalMax に接続し、HeidiSQL でApprovalMax のデータをクエリする方法を解説します。

ApprovalMax のデータへの接続設定

まだ設定していない場合は、データソース名(DSN)で必要な接続プロパティを指定します。組み込みの Microsoft ODBC データソースアドミニストレーターを使用して DSN を設定できます。これはドライバーインストールの最終ステップでもあります。Microsoft ODBC データソースアドミニストレーターを使用して DSN を作成・設定する方法については、ヘルプドキュメントの「はじめに」の章をご参照ください。

まず、Profile 接続プロパティをディスク上の ApprovalMax プロファイルの場所に設定します(例:C:\profiles\ApprovalMax.apip)。次に、ProfileSettings 接続プロパティを ApprovalMax の接続文字列に設定します(以下を参照)。

ApprovalMax API プロファイル設定

ApprovalMax Public API では、OAuth 2.0 の認可コードフローで認証を行います。自分のデータに接続するだけでなく、他のユーザーが各自のデータに接続できるようにすることも可能です。

まず、ApprovalMax に OAuth アプリケーションを登録する必要があります。ApprovalMax Developer Portal(https://developer.approvalmax.com/applications)にサインインし、新しいアプリケーションを作成します。OAuth アプリケーションには Client ID と Client Secret が割り当てられます。また、Redirect URI(Callback URL)を少なくとも1つ登録しておく必要があります。

Public API を利用するには、ApprovalMax の Premium サブスクリプション(または有効なトライアル)が必要です。

以下の接続プロパティを設定すると、接続できるようになります。

  • AuthScheme:OAuth に設定します。
  • InitiateOAuth:GETANDREFRESH に設定します。InitiateOAuth を使うと、OAuthAccessToken を取得するプロセスを管理できます。
  • OAuthClientId:ApprovalMax Developer Portal のアプリケーション設定に表示される Client ID に設定します。
  • OAuthClientSecret:ApprovalMax Developer Portal のアプリケーション設定に表示される Client Secret に設定します。
  • CallbackURL:アプリケーション設定で登録した Redirect URI に設定します。
  • Scope:(オプション)デフォルトの OAuth スコープを上書きします。デフォルト値の openid offline_access https://www.approvalmax.com/scopes/public_api/read は、このプロファイルのすべてのテーブルへの読み取り専用アクセスを許可し、リフレッシュトークンを有効にします。スコープを絞り込む際は、最小権限の原則に従ってください。

OAuth の Authorization URL は https://identity.approvalmax.com/connect/authorize、Token URL は https://identity.approvalmax.com/connect/token です。グラントタイプは authorization_code と refresh_token の両方に対応しています。

DSN を設定する際には、Max Rows 接続プロパティも設定することをお勧めします。これにより返される行数が制限され、レポートやビジュアライゼーションの設計時にパフォーマンスを向上させるのに役立ちます。

SQL Gateway の設定

SQL Gateway 概要を参照して、ApprovalMax のデータを仮想 MySQL データベースとして接続できるよう設定します。クライアントからの MySQL リクエストを受け付ける MySQL リモーティングサービスを設定します。このサービスは SQL Gateway の UI で設定できます。

SQL Gateway で MySQL リモーティングサービスを作成(Salesforce の例)

HeidiSQL から SQL Gateway に接続するには、Web に公開されたマシンで SQL Gateway を実行する必要があります。SQL Gateway を設定したら、以下の情報を控えておいてください:

  • SQL Gateway をホストしているマシンの IP アドレスまたはドメイン名
  • MySQL サービスのデータソース名(通常は CData API Sys)
  • MySQL サービスのポート番号
  • サービスにアクセス権を持つ SQL Gateway ユーザーの資格情報

リモートアクセスの設定

ODBC ドライバーとリモーティングサービスがオンプレミスにインストールされている場合(HeidiSQL からアクセスできない場合)、リバース SSH トンネリング機能を使用してリモートアクセスを有効にできます。詳細な手順については、ナレッジベース記事「SQL Gateway SSH トンネリング機能」をご参照ください。

HeidiSQL でApprovalMax に接続

CData API Driver for ODBC 用の MySQL サービスを設定したら、HeidiSQL でデータに接続する準備が整います。HeidiSQL で新しい接続セッションを作成し、MySQL ライブラリタイプを選択します。

SQL Gateway で設定したApprovalMax 用 MySQL サービスの値を使用してデータセットを設定します(データベース名には必ず DSN を使用してください)。接続を検証して「Open」をクリックします。

SQL Gateway への接続を設定

HeidiSQL からApprovalMax をクエリ

  1. 左側のデータベース一覧で、先ほど設定したApprovalMax への接続を見つけます。
  2. 左側のデータベース一覧で、適切な接続を展開して、ApprovalMax 内の個々のテーブルやデータオブジェクトを表示します。
  3. これらのテーブルに対してカスタム SQL クエリを記述し、データソースを通常の SQL Server データベースのように扱います。または、関連するテーブルを選択して各テーブルデータセットを視覚的に探索できます。 HeidiSQL でクエリを実行

CData API Driver for ODBC と SQL Gateway を使用することで、HeidiSQL からApprovalMax のデータを簡単にクエリできます。HeidiSQL からオンプレミスのデータにアクセスする必要がある場合など、ご質問がありましたらサポートチームまでお問い合わせください。

はじめる準備はできましたか?

API Driver で ApprovalMax のライブデータに接続

ApprovalMax に接続