ClickHouse Cloud の設定
1
Connect your app を選択
ClickHouse Cloud サービスを作成したら、Connect your app 画面でドロップダウンから MySQL を選択します。2
MySQL インターフェイスを有効にする
このサービス専用の MySQL インターフェイスを有効にするには、スイッチをオンにします。 これにより、このサービスでポート3306 が公開され、固有の MySQL ユーザー名を含む MySQL 接続画面が表示されます。または、既存のサービスで MySQL インターフェイスを有効にするには、次の手順に従います。3
Connect を選択
サービスが Running 状態であることを確認してから、MySQL インターフェイスを有効にしたいサービスをクリックします。
左側のメニューから「Connect」を選択します。4
MySQL を選択
Connect With ドロップダウンから MySQL を選択します。5
MySQL インターフェイスを有効にする
このサービス専用の MySQL インターフェイスを有効にするには、スイッチをオンにします。 これにより、このサービスでポート3306 が公開され、固有の MySQL ユーザー名を含む MySQL 接続画面が表示されます。ClickHouse Cloud で読み取り専用の MySQL ユーザーを作成する
mysql4<subdomain> ユーザーが自動的に作成されます。
<subdomain> の部分は、ClickHouse Cloud のホスト名の先頭部分に対応します。
このユーザー名形式は、安全な接続を確立するものの、TLS ハンドシェイクに SNI (Server Name Indication) 情報を含めないツールとの互換性のために必要です。
SNI 情報がないと、システムは適切な内部ルーティングを実行できないため、ユーザー名に埋め込まれたサブドメイン情報が必要なルーティング情報を補います。
MySQL コンソールクライアントは、その一例です。
ClickHouse Cloud のホスト名が
foobar.us-east1.aws.clickhouse.cloud の場合、<subdomain> の部分は foobar で、カスタム MySQL ユーザー名は mysql4foobar_team1 のようになります。2
ClickHouse Cloud で複数の MySQLユーザーをトラブルシューティングする
mysql4<subdomain>_<username> 形式に従っていることを確認してください。
オンプレミスの ClickHouse サーバーのセットアップ
config.xml にエントリを追加する以外に
mysql_user の設定例です。
/etc/clickhouse-server/users.d/mysql_user.xml
password_double_sha1_hex エントリを、自分で生成したダブル SHA1 ハッシュに置き換えてください。
さらに、SHOW [FULL] COLUMNS クエリの結果に ClickHouse の型ではなくネイティブな MySQL 型を表示するため、use_mysql_types_in_show_columns を使用することを推奨します。
これにより、MySQL コネクタを使用する際に、BI ツールがデータベースのスキーマを適切に解析できるようになります。
例:
/etc/clickhouse-server/users.d/mysql_user.xml
mysql バイナリが利用できる場合は、コマンドラインから接続をテストできます。
上記のサンプルのユーザー名 (mysql_user) とパスワード (LZOQYnqQN4L/T6L0) を使用すると、コマンドラインは次のようになります。
config.xml で全アドレスを待ち受けるには、以下のコメントアウトを解除します。
Tableau Online を ClickHouse に接続する (オンプレミス環境、SSL なし)
使用可能なコネクタの一覧から “MySQL” を選択します。
ClickHouse のセットアップ時に取得した接続情報を入力します。
Tableau Online がデータベースを読み取り、利用可能なテーブルの一覧を表示します。目的のテーブルを右側のキャンバスへドラッグします。さらに、“Update Now” をクリックしてデータをプレビューしたり、読み取られたフィールドの型や名前を調整したりできます。
あとは右上の “Publish As” をクリックするだけで、新しく作成したデータセットを Tableau Online で通常どおり使用できるようになります。 注: Tableau Online を Tableau Desktop と併用し、両者の間で ClickHouse のデータセットを共有したい場合は、Tableau Desktop 側でも既定の MySQL コネクタを使用してください。その際は、Data Source ドロップダウンから MySQL を選択すると表示されるセットアップガイド (こちら) に従ってください。M1 Mac を使用している場合は、ドライバーのインストール回避策について このトラブルシューティングスレッド を確認してください。
Tableau Online を ClickHouse に接続する (SSL を使用するクラウドまたはオンプレミス環境)
MySQL 接続設定 UI では、“SSL” オプションが有効になっていることを確認してください。
ClickHouse Cloud の SSL 証明書は Let’s Encrypt によって署名されています。
このルート証明書は こちら からダウンロードできます。
通常どおり必要なテーブルを選択し (Tableau Online の場合と同様) 、 “Server” -> “Publish Data Source” -> Tableau Cloud を選択します。
重要: “Authentication” オプションで “Embedded password” を選択する必要があります。
さらに、“Update workbook to use the published data source” を選択します。
最後に “Publish” をクリックすると、認証情報が埋め込まれたデータソースが Tableau Online で自動的に開きます。
既知の制限事項 (ClickHouse 23.11)
23.11 ですべて修正されています。ほかに互換性の問題が見つかった場合は、お問い合わせいただくか、新しい Issue を作成してください。