はじめに
MySQLは、広く使用されているオープンソースのリレーショナルデータベース管理システムです。DomoのMySQLコネクターを使用すると、MySQLデータベースからデータを取得してカスタムレポートを編集することができます。SQLクエリを入力することにより、必要なデータを指定することができます。MySQL APIの詳細については、ウェブサイト( http://dev.mysql.com/doc/refman/5.0/en/c-api.html )を参照してください。 MySQLコネクターは「データベース」コネクターです。つまり、クエリを使用してデータベースからデータを取得します。Data Centerでは、ウィンドウ上部のツールバーで [データベース] をクリックすることで、これを含むほかのデータベースコネクターのページにアクセスできます。 MySQLデータベースには、Data Centerから接続します。このトピックでは、MySQLコネクターユーザーインターフェースに固有のフィールドとメニューについて説明します。DataSetの追加や更新スケジュールの設定、DataSet情報の編集に関する一般的な情報は、「 コネクターを使用してDataSetを追加する 」を参照してください。- MySQLサーバーがTLSをサポートしていれば、このコネクターもTLSをサポートします。
- 非SSL接続はサポートされていません。証明書が提供されていない場合、SSLで接続されますが、証明書による認証は行われません。接続では、すべてのサーバー証明書が信頼されます。詳細については、https://msdn.microsoft.com/en-us/library/bb879949%28v=sql.110%29.aspx を参照してください。
| 主な使用事例 | データマートとデータウェアハウスSQLクエリを取得する |
| 主なメトリクス | 該当なし |
| 社内における主な権限 |
|
| 平均導入時間 | 5~40時間以上 |
| 使いやすさ(1~10の段階。1が「最も使いやすい」) | 7 |
ベストプラクティス
- 結果セットのサイズをできる限り制限します。
- 列数を最小限に抑えます。
必要条件
MySQLデータベースに接続してDataSetを作成するには、以下の情報が必要になります。- MySQLデータベースにログインするためのユーザー名とパスワード
- データベースのホスト名
- データベースのポート番号
- データベース名またはスキーマ名
- データを取得するためのSQLクエリ
- SSL
MySQLアカウントを作成する
MySQLアカウントは次の2つの方法で作成することができます。- アカウントの作成とアカウント権限の設定を行うためのアカウント管理ステートメントを使用する( CREATE USER や GRANT など)。このようなステートメントを使用すると、ベースとなる権限テーブルがサーバーによって更新されます。
- MySQLの権限テーブルを、 INSERT 、 UPDATE 、 DELETE などのステートメントで直接操作する。
ホワイトリストに登録する
MySQLデータベースに接続する前に、データベースサーバーの接続ポートでIPアドレスをいくつかホワイトリストに登録する必要があります。IPアドレスの詳細なリストについては、「 コネクターのIPアドレスをホワイトリストに登録する 」を参照してください。MySQLデータベースに接続する
このセクションでは、MySQLコネクターページの [認証情報] および [詳細] ペインのオプションについて説明します。このページのほかのペインの項目である [スケジュール設定] や [DataSetに名前を付け、説明を入力] に関しては、ほとんどのタイプのコネクターで共通しています。詳細については「 コネクターを使用してDataSetを追加する 」を参照してください。[認証情報]ペイン
このペインには、データベースに接続するための認証情報の入力フィールドが含まれています。以下の表で、各フィールドについて説明します。フィールド | 説明 |
|---|---|
Host | SQLデータベースのホスト名を入力します。例: db.company.com |
Database Name | SQLデータベース名、またはスキーマ名を入力します。 |
Username | MySQLユーザー名を入力します。 |
Password | MySQLパスワードを入力します。 |
CA Certificate | SSL CA証明書が存在する場所のURLを入力します(オプション)。 |
Port | データベースのポート番号を入力します。 |
[詳細]ペイン
このペインで、SQLクエリを作成して、データベースからデータを取得します。パラメーターは使用しても、使用しなくても構いません。メニュー | 説明 |
|---|---|
Query Type | 使用するMySQLクエリタイプを選択します(パラメーターの使用は問いません)。 |
Query | 必要なデータを選択するためのSQL(構造化照会言語)クエリを入力します。例: select * from Employee Query Helper パラメーターを使用して、使用可能なSQLクエリを記述できます。 Query Helper を使用するには、以下の手順を実行します。
|
Query Parameter | クエリパラメーターの値を入力します。これは、クエリパラメーターの初期値です。このオプションを使用して、最終実行日以降の新しいデータを取得できます。 例えば、 [Query] フィールドに次のクエリを入力した場合は、
これに続けて、 [Query Parameter] に以下の内容を入力すると、
この場合、最初の実行時に3行返され、それ以降は必ず1行返されます。結果は、大きな値から小さな値の順に並び変えられています。 同様に、 [Query] フィールドに次のクエリを入力した場合は、
これに続けて、 [Query Parameter] に以下の内容を入力すると、
この場合、最初の実行時に5行返され、それ以降は必ず0行返されます。 |
TinyInt Values Treated as Boolean Values? | TinyInt値をBoolean値として扱う場合は、 [Yes] を選択します。 |
Cast Boolean Values To… | 値を整数または記号列にキャストするかどうかを選択します。 |
Database Tables(オプション) | Domoにインポートするデータベーステーブルを選択します。 |
Table Columns(オプション) | Domoにインポートするテーブルの列を選択します。 |
Query Helper(オプション) | このフィールドのSQLステートメントをコピーして、 [Query] フィールドに貼り付けます。詳細については、上記の「 Query 」を参照してください。 |
その他のペイン
スケジュール設定、再試行、更新に関するオプションなど、コネクターインターフェースのその他のペインに表示されるオプションについては、「 コネクターを使用してDataSetを追加する 」を参照してください。トラブルシューティング
- MySQL Workbenchを使用して、認証情報を確認します。
- 暗号化された接続がサーバーでサポートされているかどうかを確認します。
- Domo IPがホワイトリストに登録されているかどうかを確認します。
- 実行時間を短縮するには、結合するテーブルの列名が重複しておらず、それぞれの列が呼び出されるのは1回に限られることを確認します。