これらのインストラクションを使用するダイアレクト
本ページに記載のデータベース設定要件は、MySQL、MariaDB、SingleStore(旧称 MemSQL)で共通です。
ネットワークトラフィックの暗号化
Looker アプリケーションとデータベース間のネットワーク トラフィックを暗号化することをおすすめします。セキュアなデータベースアクセスを可能にするドキュメント ページに記載されているオプションのいずれかを検討してください。
SSL 暗号化の使用に関心がある場合は、こちらの MySQL ドキュメント ページをご覧ください。
ユーザーとセキュリティ
必要なアクセス権限を作成し、Looker ユーザーに付与するには、お使いのデータベースの言語とバージョンに該当するセクションの指示に従ってください。
MySQL 8.0.X:
MySQL 8.0.X では、デフォルトの認証プラグインは caching_sha2_password
です。Looker は、mysql_native_password
プラグインを使用して、JDBC ドライバを介して MySQL データベースに対する認証を試みます。このバージョンの MySQL を正しく機能させるには、追加の手順を行う必要があります。
mysql_native_password
プラグインを使用するように MySQL データベースを構成します。これは複数の方法で実行できます。どの方法を使用するかは、MySQL 8データべースのデプロイ方法と、構成へのアクセスのタイプによって決まります。--default-auth=mysql_native_password
フラグでプロセスを開始するmy.cnf
構成ファイルのプロパティを設定します。
[mysqld] default-authentication-plugin=mysql_native_password
- データベース インスタンスが AWS RDS を介してホストされている場合、このデータベース インスタンスに適用される RDS パラメータ グループを介して
default_authentication_plugin
パラメータを設定します。
次のコマンドを実行します。
some_password_here
は、一意の安全なパスワードに置き換えてください。CREATE USER looker IDENTIFIED WITH mysql_native_password BY 'some_password_here'; GRANT SELECT ON database_name.* TO 'looker'@'%';
MySQL 5.7.X 以前、MariaDB、SingleStore:
次のコマンドを実行します。some_password_here
は、一意の安全なパスワードに置き換えてください。
CREATE USER looker;
SET PASSWORD FOR looker = PASSWORD ('some_password_here');
GRANT SELECT ON database_name.* TO 'looker'@'%';
永続的派生テーブルの一時スキーマの設定
これらのデータベース言語は、永続的な派生テーブル(PDT)の作成をサポートしています。非常に有用な機能であるため、可能な場合は有効化することをお勧めします。
PDT を有効化するには、一時スキーマを設定する必要があります。次のコマンドは、一時データベースの作成と必要な権限の looker
ユーザーへの付与の例を示しています。
データベース接続の作成時に、一時データベース フィールドで一時データベースの名前を指定できます。一時データベースの名前を指定しない場合、Looker は
looker_tmp
という名前のスクラッチ データベースを生成します。次のコマンドはlooker_tmp
を使用していますが、別の一時データベース名を指定している場合は、looker_tmp
の代わりにお使いの一時データベース名を使用します。
CREATE SCHEMA looker_tmp;
GRANT
SELECT,
INDEX,
INSERT,
UPDATE,
DELETE,
CREATE,
DROP,
ALTER,
CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';
SingleStore の場合、またはお使いのデータベースで GTID ベースのレプリケーションを使用している場合、PDT を使用するには create_process
LookML パラメータを使用する必要があります。これは、GTID では CREATE TABLE AS SELECT
ステートメントがサポートされないためです。
標準派生テーブルの代替設定
永続的な派生テーブルの作成を許可しない場合でも、通常の派生テーブルを使用できます。通常の派生テーブルを使用する場合でも、looker_tmp
というスキーマに特定の権限を追加する必要があります。ただし、looker_tmp
スキーマがお使いのデータベースに実際に存在する必要はありません。
GRANT
SELECT,
INDEX,
INSERT,
DROP,
CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';
-- Note that the looker_tmp schema does not need to actually exist,
-- even though these permission grants are still needed
max_allowed_packet
変数の設定
MySQL では、「SQLException: Packet for query is too large」エラーを防ぐために、MySQL max_allowed_packet
変数を最大値(1073741824)に設定します。
データベースへの Looker 接続の作成
データベースの構成が完了したら、Lookerからデータベースに接続できます。Looker からデータベースへの接続を作成する手順は次のとおりです。
- Looker の [管理者] セクションで [接続] を選択し、[新しい接続] をクリックします。
[言語] プルダウン メニューから、データベース言語名(MySQL、MySQL 8.0.12 以降、MariaDB、SingleStore、SingleStore 7 以降)を選択します。
接続の詳細を入力します。設定の大部分は、ほとんどのデータベース言語に共通するものです。詳細については、Looker をデータベースに接続するのドキュメント ページをご覧ください。
接続が成功したことを確認するには、[テスト] をクリックします。トラブルシューティング情報については、データベース接続のテストのドキュメント ページをご覧ください。
これらの設定を保存するには、[接続] をクリックします。
機能のサポート
一部の機能については、Looker でサポートするには、データベース言語が同じ機能に対応している必要があります。
MySQL は、Looker 24.8 の時点で、次の機能をサポートしています。
特徴 | サポート対象 |
---|---|
サポート レベル | サポート対象 |
Looker(Google Cloud コア) | いいえ |
対称集計 | あり |
派生テーブル | あり |
永続的な SQL 派生テーブル | あり |
永続的なネイティブ派生テーブル | あり |
安定したビュー | あり |
クエリの強制終了 | あり |
SQL ベースのピボット | あり |
タイムゾーン | あり |
SSL | あり |
Subtotals | あり |
JDBC の追加パラメータ | あり |
Case Sensitive | いいえ |
ロケーション タイプ | あり |
リストのタイプ | あり |
パーセンタイル | あり |
個別のパーセンタイル | あり |
SQL Runner の表示プロセス | あり |
SQL Runner の説明テーブル | あり |
SQL Runner 表示インデックス | あり |
SQL Runner Select 10 | あり |
SQL ランナーの数 | あり |
SQL の説明 | あり |
Oauth 認証情報 | いいえ |
コンテキスト コメント | あり |
接続プーリング | いいえ |
HLL スケッチ | いいえ |
集計認識 | あり |
増分PDT | あり |
ミリ秒 | あり |
マイクロ秒 | あり |
マテリアライズド ビュー | いいえ |
Approximate Count Distinct | × |
MySQL 8.0.12 以降では、Looker 24.8 の時点で、次の機能をサポートしています。
特徴 | サポート対象 |
---|---|
サポート レベル | サポート対象 |
Looker(Google Cloud コア) | はい |
対称集計 | あり |
派生テーブル | あり |
永続的な SQL 派生テーブル | あり |
永続的なネイティブ派生テーブル | あり |
安定したビュー | あり |
クエリの強制終了 | あり |
SQL ベースのピボット | あり |
タイムゾーン | あり |
SSL | あり |
Subtotals | あり |
JDBC の追加パラメータ | あり |
Case Sensitive | いいえ |
ロケーション タイプ | あり |
リストのタイプ | あり |
パーセンタイル | あり |
個別のパーセンタイル | あり |
SQL Runner の表示プロセス | あり |
SQL Runner の説明テーブル | あり |
SQL Runner 表示インデックス | あり |
SQL Runner Select 10 | あり |
SQL ランナーの数 | あり |
SQL の説明 | あり |
Oauth 認証情報 | いいえ |
コンテキスト コメント | あり |
接続プーリング | いいえ |
HLL スケッチ | いいえ |
集計認識 | あり |
増分PDT | あり |
ミリ秒 | あり |
マイクロ秒 | あり |
マテリアライズド ビュー | いいえ |
Approximate Count Distinct | × |
MariaDB は、Looker 24.8 の時点で、次の機能をサポートしています。
特徴 | サポート対象 |
---|---|
サポート レベル | サポート対象 |
Looker(Google Cloud コア) | はい |
対称集計 | あり |
派生テーブル | あり |
永続的な SQL 派生テーブル | あり |
永続的なネイティブ派生テーブル | あり |
安定したビュー | あり |
クエリの強制終了 | あり |
SQL ベースのピボット | いいえ |
タイムゾーン | あり |
SSL | あり |
Subtotals | あり |
JDBC の追加パラメータ | あり |
Case Sensitive | いいえ |
ロケーション タイプ | あり |
リストのタイプ | あり |
パーセンタイル | あり |
個別のパーセンタイル | あり |
SQL Runner の表示プロセス | あり |
SQL Runner の説明テーブル | あり |
SQL Runner 表示インデックス | あり |
SQL Runner Select 10 | あり |
SQL ランナーの数 | あり |
SQL の説明 | あり |
Oauth 認証情報 | いいえ |
コンテキスト コメント | あり |
接続プーリング | いいえ |
HLL スケッチ | いいえ |
集計認識 | あり |
増分PDT | いいえ |
ミリ秒 | あり |
マイクロ秒 | あり |
マテリアライズド ビュー | いいえ |
Approximate Count Distinct | × |
SingleStore 7 以降では、Looker 24.8 の時点で、次の機能をサポートしています。
特徴 | サポート対象 |
---|---|
サポート レベル | サポート対象 |
Looker(Google Cloud コア) | いいえ |
対称集計 | あり |
派生テーブル | あり |
永続的な SQL 派生テーブル | あり |
永続的なネイティブ派生テーブル | あり |
安定したビュー | あり |
クエリの強制終了 | あり |
SQL ベースのピボット | あり |
タイムゾーン | あり |
SSL | あり |
Subtotals | あり |
JDBC の追加パラメータ | あり |
Case Sensitive | いいえ |
ロケーション タイプ | あり |
リストのタイプ | あり |
パーセンタイル | いいえ |
個別のパーセンタイル | いいえ |
SQL Runner の表示プロセス | あり |
SQL Runner の説明テーブル | あり |
SQL Runner 表示インデックス | あり |
SQL Runner Select 10 | あり |
SQL ランナーの数 | あり |
SQL の説明 | あり |
Oauth 認証情報 | いいえ |
コンテキスト コメント | あり |
接続プーリング | いいえ |
HLL スケッチ | いいえ |
集計認識 | あり |
増分PDT | いいえ |
ミリ秒 | あり |
マイクロ秒 | あり |
マテリアライズド ビュー | いいえ |
Approximate Count Distinct | × |
SingleStore 7 以降では、Looker 24.8 の時点で、次の機能をサポートしています。
特徴 | サポート対象 |
---|---|
サポート レベル | サポート対象 |
Looker(Google Cloud コア) | はい |
対称集計 | あり |
派生テーブル | あり |
永続的な SQL 派生テーブル | あり |
永続的なネイティブ派生テーブル | あり |
安定したビュー | あり |
クエリの強制終了 | あり |
SQL ベースのピボット | あり |
タイムゾーン | あり |
SSL | あり |
Subtotals | あり |
JDBC の追加パラメータ | あり |
Case Sensitive | いいえ |
ロケーション タイプ | あり |
リストのタイプ | あり |
パーセンタイル | あり |
個別のパーセンタイル | いいえ |
SQL Runner の表示プロセス | あり |
SQL Runner の説明テーブル | あり |
SQL Runner 表示インデックス | あり |
SQL Runner Select 10 | あり |
SQL ランナーの数 | あり |
SQL の説明 | あり |
Oauth 認証情報 | いいえ |
コンテキスト コメント | あり |
接続プーリング | いいえ |
HLL スケッチ | いいえ |
集計認識 | あり |
増分PDT | いいえ |
ミリ秒 | あり |
マイクロ秒 | あり |
マテリアライズド ビュー | いいえ |
Approximate Count Distinct | いいえ |