> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

> MySQL または MariaDB データベースから ClickHouse Cloud へシームレスにデータを取り込めます。

# MySQL から ClickHouse へのデータ取り込み（CDC（変更データキャプチャ）を使用）

export const Image = ({img, alt, size = "lg"}) => {
  const normalizedSize = ["sm", "md", "lg"].includes(size) ? size : "lg";
  return <div className={`ch-image-${normalizedSize}`}>
      <Frame>
        <img src={img} alt={alt} />
      </Frame>
    </div>;
};

export const BetaBadge = ({link, galaxyTrack, galaxyEvent}) => {
  if (link) {
    return <a href={link} target="_blank" rel="noopener noreferrer" className="betaBadge" onClick={galaxyTrack && galaxyEvent ? galaxyOnClick(galaxyEvent) : undefined}>
                <Icon />
                <span>ベータ</span>
            </a>;
  }
  return <div className="betaBadge">
            <Icon />
            <span>
                ベータ機能です。 
                <u>
                    <a href="/docs/docs/beta-and-experimental-features#beta-features">
                        詳しくはこちら。
                    </a>
                </u>
            </span>
        </div>;
};

<BetaBadge />

<Info>
  ClickPipes 経由で MySQL から ClickHouse Cloud にデータを取り込む機能は、現在パブリックベータです。
</Info>

MySQL ClickPipe は、MySQL および MariaDB データベースから ClickHouse Cloud にデータを取り込むための、フルマネージドかつ耐障害性に優れた方法です。**バルクロード**による一回限りのインジェストと、\*\*変更データキャプチャ (CDC (変更データキャプチャ) ) \*\*による継続的インジェストの両方をサポートしています。

MySQL ClickPipe は、ClickPipes UI を使用して手動でデプロイおよび管理できるほか、[OpenAPI](/docs/ja/integrations/clickpipes/programmatic-access/openapi) や [Terraform](/docs/ja/integrations/clickpipes/programmatic-access/terraform) を使用してプログラムで操作することもできます。

<div id="prerequisites">
  ## 前提条件
</div>

[//]: # "TODO 一回限りのインジェスト パイプでは、binlog レプリケーションの設定は不要です。これは過去にも混乱の原因になっていたため、ユーザーを必要以上に不安にさせないよう、バルクロードに必要な最小限の要件も提示すべきです。"

開始するには、まず MySQL データベースが binlog レプリケーション用に正しく設定されていることを確認する必要があります。設定手順は MySQL のデプロイ方法によって異なるため、以下の該当するガイドに従ってください。

<div id="supported-data-sources">
  ### サポート対象のデータソース
</div>

| 名前                                                           | ロゴ | 詳細                                                                                                                      |
| ------------------------------------------------------------ | -- | ----------------------------------------------------------------------------------------------------------------------- |
| **Amazon RDS MySQL** <br /> *一度だけロード, CDC (変更データキャプチャ) *     |    | [Amazon RDS MySQL](/docs/ja/integrations/clickpipes/mysql/source/rds) の設定ガイドに従ってください。                                        |
| **Amazon Aurora MySQL** <br /> *一度だけロード, CDC (変更データキャプチャ) *  |    | [Amazon Aurora MySQL](/docs/ja/integrations/clickpipes/mysql/source/aurora) の設定ガイドに従ってください。                                  |
| **Cloud SQL for MySQL** <br /> *一度だけロード, CDC (変更データキャプチャ) *  |    | [Cloud SQL for MySQL](/docs/ja/integrations/clickpipes/mysql/source/gcp) の設定ガイドに従ってください。                                     |
| **Azure Flexible Server for MySQL** <br /> *一度だけロード*         |    | [Azure Flexible Server for MySQL](/docs/ja/integrations/clickpipes/mysql/source/azure-flexible-server-mysql) の設定ガイドに従ってください。 |
| **セルフホスト MySQL** <br /> *一度だけロード, CDC (変更データキャプチャ) *         |    | [Generic MySQL](/docs/ja/integrations/clickpipes/mysql/source/generic) の設定ガイドに従ってください。                                       |
| **Amazon RDS MariaDB** <br /> *一度だけロード, CDC (変更データキャプチャ) *   |    | [Amazon RDS MariaDB](/docs/ja/integrations/clickpipes/mysql/source/rds-maria) の設定ガイドに従ってください。                                |
| **セルフホスト MariaDB** <br /> *一度だけロード, CDC (変更データキャプチャ) *       |    | [Generic MariaDB](/docs/ja/integrations/clickpipes/mysql/source/generic-maria) の設定ガイドに従ってください。                               |

ソース MySQL データベースの設定が完了したら、ClickPipe の作成に進むことができます。

<div id="create-your-clickpipe">
  ## ClickPipe を作成する
</div>

ClickHouse Cloud アカウントにログインしていることを確認してください。まだアカウントをお持ちでない場合は、[こちら](https://cloud.clickhouse.com/)から登録できます。

[//]: # "   TODO ここで画像を更新"

1. ClickHouse Cloud コンソールで、対象の ClickHouse Cloud サービスを開きます。

<Image img="https://mintcdn.com/private-7c7dfe99/Rm4A9_kDxZf0ApeE/images/integrations/data-ingestion/clickpipes/cp_service.webp?fit=max&auto=format&n=Rm4A9_kDxZf0ApeE&q=85&s=ba65ca18b8e032a9d412b779741717f5" alt="ClickPipes サービス" size="lg" border width="1184" height="482" data-path="images/integrations/data-ingestion/clickpipes/cp_service.webp" />

2. 左側のメニューで `Data Sources` ボタンを選択し、「Set up a ClickPipe」をクリックします

<Image img="https://mintcdn.com/private-7c7dfe99/Rm4A9_kDxZf0ApeE/images/integrations/data-ingestion/clickpipes/cp_step0.webp?fit=max&auto=format&n=Rm4A9_kDxZf0ApeE&q=85&s=fb04bb07245be43cb784fa68cee62287" alt="インポートを選択" size="lg" border width="2606" height="790" data-path="images/integrations/data-ingestion/clickpipes/cp_step0.webp" />

3. `MySQL CDC（変更データキャプチャ）` タイルを選択します

<Image img="https://mintcdn.com/private-7c7dfe99/Rm4A9_kDxZf0ApeE/images/integrations/data-ingestion/clickpipes/mysql/mysql-tile.webp?fit=max&auto=format&n=Rm4A9_kDxZf0ApeE&q=85&s=6e7a0ad3fb4b0303186a3c66237d9987" alt="MySQL を選択" size="lg" border width="2612" height="892" data-path="images/integrations/data-ingestion/clickpipes/mysql/mysql-tile.webp" />

<div id="add-your-source-mysql-database-connection">
  ### ソース MySQL データベース接続を追加する
</div>

4. 前提条件の手順で設定したソース MySQL データベースの接続情報を入力します。

<Info>
  接続情報を入力する前に、ファイアウォールのルールで ClickPipes IP addresses を許可リストに追加してあることを確認してください。次のページで [ClickPipes IP addresses の一覧](/docs/ja/integrations/clickpipes/home#list-of-static-ips) を確認できます。
  詳細については、[このページの上部](#prerequisites) にリンクされているソース MySQL のセットアップガイドを参照してください。
</Info>

<Image img="https://mintcdn.com/private-7c7dfe99/Rm4A9_kDxZf0ApeE/images/integrations/data-ingestion/clickpipes/mysql/mysql-connection-details.webp?fit=max&auto=format&n=Rm4A9_kDxZf0ApeE&q=85&s=9eefe348ba0d4d2ce55623a8419a6931" alt="接続情報を入力" size="lg" border width="1842" height="1556" data-path="images/integrations/data-ingestion/clickpipes/mysql/mysql-connection-details.webp" />

<div id="optional-changing-tls-settings">
  #### &#x20;(任意) TLS設定の変更
</div>

デフォルトでは、ClickPipe は TLS と証明書検証を有効にした状態で作成されます。これらのデフォルト設定は、ClickPipe の作成時に変更できます。

<Frame>
  <img src="https://mintcdn.com/private-7c7dfe99/dZZG_-B0EzCG8L4V/images/integrations/data-ingestion/clickpipes/postgres/tls-settings.webp?fit=max&auto=format&n=dZZG_-B0EzCG8L4V&q=85&s=354571f9124f3d67be0009e0c0986509" alt="TLS 設定" width="1113" height="688" data-path="images/integrations/data-ingestion/clickpipes/postgres/tls-settings.webp" />
</Frame>

または、一時停止中の ClickPipe の *Settings* タブにある *Connection settings* セクションで編集することもできます。

<Frame>
  <img src="https://mintcdn.com/private-7c7dfe99/dZZG_-B0EzCG8L4V/images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp?fit=max&auto=format&n=dZZG_-B0EzCG8L4V&q=85&s=28a2df0694e28170b34f8ba7f8e81b82" alt="接続設定 -> 接続を編集" data-og-width="1035" width="1035" data-og-height="312" height="312" data-path="images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/private-7c7dfe99/dZZG_-B0EzCG8L4V/images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp?w=280&fit=max&auto=format&n=dZZG_-B0EzCG8L4V&q=85&s=dba8d05cac1ee3d8cac0765e6508fc65 280w, https://mintcdn.com/private-7c7dfe99/dZZG_-B0EzCG8L4V/images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp?w=560&fit=max&auto=format&n=dZZG_-B0EzCG8L4V&q=85&s=da9b3248a380def99a3eac70fa2766fc 560w, https://mintcdn.com/private-7c7dfe99/dZZG_-B0EzCG8L4V/images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp?w=840&fit=max&auto=format&n=dZZG_-B0EzCG8L4V&q=85&s=4d478a7aeda56d495f47322d0c448a39 840w, https://mintcdn.com/private-7c7dfe99/dZZG_-B0EzCG8L4V/images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp?w=1100&fit=max&auto=format&n=dZZG_-B0EzCG8L4V&q=85&s=dcc4a87641fea36cecbbcbd1d7ed6e98 1100w, https://mintcdn.com/private-7c7dfe99/dZZG_-B0EzCG8L4V/images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp?w=1650&fit=max&auto=format&n=dZZG_-B0EzCG8L4V&q=85&s=fadfc249d44a5778963a53657c22a684 1650w, https://mintcdn.com/private-7c7dfe99/dZZG_-B0EzCG8L4V/images/integrations/data-ingestion/clickpipes/postgres/pipe-connection-settings.webp?w=2500&fit=max&auto=format&n=dZZG_-B0EzCG8L4V&q=85&s=ab8e5667017527822f07fa96cddcc22d 2500w" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/private-7c7dfe99/dZZG_-B0EzCG8L4V/images/integrations/data-ingestion/clickpipes/postgres/pipe-edit-connection.webp?fit=max&auto=format&n=dZZG_-B0EzCG8L4V&q=85&s=93ebf1b8ea0d0c24027a87abaae8c15b" alt="接続を編集" width="703" height="542" data-path="images/integrations/data-ingestion/clickpipes/postgres/pipe-edit-connection.webp" />
</Frame>

各項目の意味は次のとおりです。

* `Disable TLS` は、その接続で TLS を有効または無効にするトグルです。TLS を無効にすると、データはネットワーク上を平文で送信されるため、シークレットや機密データが含まれる可能性があります。
* `Skip certificate verification` は、ソースデータベースから提示される証明書の検証を有効または無効にするトグルです。証明書検証をスキップすることによるセキュリティ上の影響を考慮してください。
* `TLS Host` (省略可。デフォルトはソースの *Host*) は、証明書検証が有効な場合に、証明書の CN と一致している必要があるホスト名です。
* `Upload CA` は、証明書検証が有効な場合に使用する CA を指定するために利用できます。

<div id="optional-set-up-ssh-tunneling">
  #### &#x20;(任意) SSH トンネリングを設定する
</div>

ソースの MySQL データベースが外部公開されていない場合は、SSH トンネリングの接続情報を指定できます。

1. 「Use SSH Tunnelling」トグルを有効にします。

2. SSH の接続情報を入力します。

   <Image img="https://mintcdn.com/private-7c7dfe99/MoeBDs4tywkUTQ28/images/integrations/data-ingestion/clickpipes/postgres/ssh-tunnel.jpg?fit=max&auto=format&n=MoeBDs4tywkUTQ28&q=85&s=2cfd8e7bd51f0bb5b5c14efa95418b82" alt="SSH トンネリング" size="lg" border width="1780" height="1342" data-path="images/integrations/data-ingestion/clickpipes/postgres/ssh-tunnel.jpg" />

3. 鍵ベース認証を使用する場合は、「Revoke and generate key pair」をクリックして新しいキーペアを生成し、生成された公開鍵を SSH サーバーの `~/.ssh/authorized_keys` にコピーします。

4. 「Verify Connection」をクリックして接続を確認します。

<Note>
  ClickPipes が SSH トンネルを確立できるように、SSH 踏み台サーバーのファイアウォールルールで [ClickPipes IP addresses](/docs/ja/integrations/clickpipes/home#list-of-static-ips) を許可リストに追加してください。
</Note>

接続情報の入力が完了したら、`Next` をクリックします。

<div id="advanced-settings">
  #### 詳細設定を設定する
</div>

必要に応じて、詳細設定を行えます。各設定の概要は以下のとおりです。

* **同期間隔**: ClickPipes がソースデータベースの変更をポーリングする間隔です。これは宛先の ClickHouse サービスのコストに影響するため、コストを重視する場合は高めの値 (`3600` を超える値) に設定することを推奨します。
* **初期ロードの並列スレッド数**: 初期スナップショットの取得に使用する並列ワーカー数です。テーブル数が多い場合に、初期スナップショットの取得に使う並列ワーカー数を制御するのに役立ちます。この設定はテーブルごとに適用されます。
* **Pull バッチサイズ**: 1 回の Batch で取得する行数です。これはベストエフォートの設定であり、すべてのケースで反映されるとは限りません。
* **スナップショットのパーティションごとの行数**: 初期スナップショット中に各パーティションで取得する行数です。テーブル内の行数が非常に多い場合に、各パーティションで取得する行数を制御するのに役立ちます。
* **スナップショットで並列に処理するテーブル数**: 初期スナップショット中に並列で取得するテーブル数です。テーブル数が多い場合に、並列に取得するテーブル数を制御するのに役立ちます。
* **サーバー ID**: MySQL の binlog レプリケーション用のサーバー ID を設定するための任意のパラメータです。設定しない場合、ClickPipes はランダムなサーバー ID を生成しますが、これは ClickPipe のライフサイクル中に変更される可能性があります。ソース側の MySQL サーバーで ClickPipe を決定論的に識別するために使用します。

<div id="configure-the-tables">
  ### テーブルを設定
</div>

5. ここでは、ClickPipe の宛先データベースを選択できます。既存のデータベースを選択することも、新しいデータベースを作成することもできます。

   <Image img="https://mintcdn.com/private-7c7dfe99/Rm4A9_kDxZf0ApeE/images/integrations/data-ingestion/clickpipes/mysql/select-destination-db.webp?fit=max&auto=format&n=Rm4A9_kDxZf0ApeE&q=85&s=4d6fe95b205c42ec6d5eab65ae0c7e73" alt="宛先データベースを選択" size="lg" border width="2368" height="614" data-path="images/integrations/data-ingestion/clickpipes/mysql/select-destination-db.webp" />

6. ソース MySQL データベースからレプリケートするテーブルを選択できます。テーブルの選択時には、宛先の ClickHouse データベースでテーブル名を変更したり、特定のカラムを除外したりすることもできます。

<div id="review-permissions-and-start-the-clickpipe">
  ### 権限を確認して ClickPipe を開始する
</div>

7. 権限のドロップダウンから「Full access」ロールを選択し、「Complete Setup」をクリックします。

   <Image img="https://mintcdn.com/private-7c7dfe99/MoeBDs4tywkUTQ28/images/integrations/data-ingestion/clickpipes/postgres/ch-permissions.jpg?fit=max&auto=format&n=MoeBDs4tywkUTQ28&q=85&s=f14674431c4db83bae53ffe332bfe7e1" alt="権限の確認" size="lg" border width="1844" height="716" data-path="images/integrations/data-ingestion/clickpipes/postgres/ch-permissions.jpg" />

最後に、よくある問題とその解決方法の詳細については、["MySQL 向け ClickPipes よくある質問"](/docs/ja/integrations/clickpipes/mysql/faq) ページを参照してください。

<div id="whats-next">
  ## 次のステップ
</div>

[//]: # "TODO PostgreSQL 向けの既存ガイドと同様に、MySQL 固有の移行ガイドとベストプラクティスを作成する。現在の移行ガイドは MySQL table engine を参照しているが、これは理想的ではない。"

MySQL から ClickHouse Cloud へデータをレプリケートするための ClickPipe の設定が完了したら、次は最適なパフォーマンスを引き出すためのデータのクエリ方法やモデリングに注力できます。MySQL CDC (変更データキャプチャ) に関するよくある質問やトラブルシューティングについては、[MySQL よくある質問ページ](/docs/ja/integrations/clickpipes/mysql/faq)を参照してください。
