TiDB 移行ツールの概要
TiDB は、完全なデータ移行、増分データ移行、バックアップと復元、データ複製など、さまざまなシナリオに対応する複数のデータ移行ツールを提供します。
このドキュメントでは、ユーザー シナリオ、サポートされているアップストリームとダウンストリーム、これらのツールの利点と制限について紹介します。必要に応じて適切なツールを選択できます。
TiDB データ移行 (DM)
| ユーザーシナリオ | MySQL 互換データベースから TiDB へのデータ移行 | 
|---|---|
| 上流の | MySQL、MariaDB、 Aurora、MySQL | 
| 下流 | TiDB | 
| 利点 | |
| 制限 | データのインポート速度は、TiDB Lightning の論理インポート モードとほぼ同じですが、TiDB Lightning の物理インポート モードよりも大幅に遅くなります。そのため、DM を使用して、サイズが 1 TiB 未満の完全なデータを移行することをお勧めします。 | 
Dumpling
| ユーザーシナリオ | MySQL または TiDB からの完全なデータ エクスポート | 
|---|---|
| 上流の | MySQL、TiDB | 
| ダウンストリーム (出力ファイル) | SQL、CSV | 
| 利点 | |
| 制限 | 
TiDB Lightning
| ユーザーシナリオ | TiDB への完全なデータのインポート | 
|---|---|
| アップストリーム (インポートされたソース ファイル) | |
| 下流 | TiDB | 
| 利点 | tidb-lightningが再起動後に中断したところからインポートを続行できるようにします。 | 
| 制限 | 
バックアップと復元 (BR)
| ユーザーシナリオ | データのバックアップと復元による大量の TiDB 顧客データの移行 | 
|---|---|
| 上流の | TiDB | 
| ダウンストリーム (出力ファイル) | SST、backup.meta ファイル、backup.lock ファイル | 
| 利点 | |
| 制限 | new_collations_enabled_on_first_bootstrap値を持つクラスター間の操作のみをサポートします。 | 
TiCDC
| ユーザーシナリオ | このツールは、TiKV 変更ログをプルすることによって実装されます。クラスター データをアップストリーム TSO との一貫性のある状態に復元し、他のシステムがデータ変更をサブスクライブできるようにサポートします。 | 
|---|---|
| 上流の | TiDB | 
| 下流 | TiDB、MySQL、アパッチ パルサー、カフカ、コンフルエント | 
| 利点 | TiCDC Open Protocol を提供 | 
| 制限 | TiCDC は、少なくとも 1 つの有効なインデックスを持つテーブルのみをレプリケートします。次のシナリオはサポートされていません。
  | 
Binlog
| ユーザーシナリオ | 1 つの TiDB クラスターを別の TiDB クラスターのセカンダリ クラスターとして使用するなど、TiDB クラスター間の増分レプリケーション | 
|---|---|
| 上流の | TiDB | 
| 下流 (または出力ファイル) | TiDB、MySQL、Kafka、増分バックアップ ファイル | 
| 利点 | リアルタイムのバックアップと復元をサポートします。ディザスタ リカバリ用に復元する TiDB クラスタ データをバックアップする | 
| 制限 | TiDB Binlogは一部の TiDB バージョンと互換性がありません。 TiCDCを使用することをお勧めします。 | 
同期差分インスペクター
| ユーザーシナリオ | データベースに格納されたデータを MySQL プロトコルと比較する | 
|---|---|
| 上流の | TiDB、MySQL | 
| 下流 | TiDB、MySQL | 
| 利点 | 少量のデータが矛盾しているシナリオでデータを修復するために使用できます | 
| 制限 | 
TiUP を使用してツールをインストールする
TiDB v4.0 以降、TiUP は、TiDB エコシステム内のさまざまなクラスター コンポーネントを管理するのに役立つパッケージ マネージャーとして機能します。単一のコマンドを使用して、任意のクラスター コンポーネントを管理できるようになりました。
ステップ 1. TiUP をインストールする
curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
グローバル環境変数を再宣言します。
source ~/.bash_profile
ステップ 2. コンポーネントをインストールする
次のコマンドを使用して、使用可能なすべてのコンポーネントを表示できます。
tiup list
コマンド出力には、使用可能なすべてのコンポーネントが一覧表示されます。
Available components:
Name            Owner    Description
----            -----    -----------
bench           pingcap  Benchmark database with different workloads
br              pingcap  TiDB/TiKV cluster backup restore tool
cdc             pingcap  CDC is a change data capture tool for TiDB
client          pingcap  Client to connect playground
cluster         pingcap  Deploy a TiDB cluster for production
ctl             pingcap  TiDB controller suite
dm              pingcap  Data Migration Platform manager
dmctl           pingcap  dmctl component of Data Migration Platform
errdoc          pingcap  Document about TiDB errors
pd-recover      pingcap  PD Recover is a disaster recovery tool of PD, used to recover the PD cluster which cannot start or provide services normally
playground      pingcap  Bootstrap a local TiDB cluster for fun
tidb            pingcap  TiDB is an open source distributed HTAP database compatible with the MySQL protocol
tidb-lightning  pingcap  TiDB Lightning is a tool used for fast full import of large amounts of data into a TiDB cluster
tiup            pingcap  TiUP is a command-line component management tool that can help to download and install TiDB platform components to the local system
インストールするコンポーネントを選択します。
tiup install dumpling tidb-lightning
ノート:
特定のバージョンのコンポーネントをインストールするには、
tiup install <component>[:version]コマンドを使用します。
ステップ 3. TiUP とそのコンポーネントを更新する (オプション)
新しいバージョンのリリース ログと互換性に関する注意事項を参照することをお勧めします。
tiup update --self && tiup update dm