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