TiDB移行ツールの概要
TiDBは、完全なデータ移行、増分データ移行、バックアップと復元、データ複製など、さまざまなシナリオに対応する複数のデータ移行ツールを提供します。
このドキュメントでは、これらのツールのユーザーシナリオ、利点、および制限を紹介します。必要に応じて適切なツールを選択できます。
次の表は、ユーザーシナリオ、サポートされている移行ツールのアップストリームおよびダウンストリームを示しています。
ツール名 | ユーザーシナリオ | アップストリーム(またはインポートされたソースファイル) | ダウンストリーム(または出力ファイル) | 利点 | 制限 |
---|---|---|---|---|---|
TiDBデータ移行(DM) | MySQL互換データベースからTiDBへのデータ移行 | MySQL、MariaDB、 Aurora、MySQL | TiDB | データのインポート速度は、TiDB LightingのTiDBバックエンドとほぼ同じであり、TiDBLightingのローカルバックエンドよりもはるかに低速です。したがって、DMを使用して、1TiB未満のサイズの完全なデータを移行することをお勧めします。 | |
Dumpling | MySQLまたはTiDBからの完全なデータエクスポート | MySQL、TiDB | SQL、CSV | ||
TiDB Lightning | TiDBへの完全なデータインポート | TiDB | tidb-lightning が再起動後に中断したところからインポートを続行できるようにします | ||
バックアップと復元(BR) | データをバックアップおよび復元することにより、大量のTiDBcusterデータを移行します。 | TiDB | SST、backup.metaファイル、backup.lockファイル | new_collations_enabled_on_first_bootstrap 値を持つクラスター間の操作のみをサポートします。 | |
TiCDC | このツールは、TiKV変更ログをプルすることによって実装されます。データをアップストリームTSOとの整合性のある状態に復元し、他のシステムがデータ変更をサブスクライブするのをサポートできます。 | TiDB | TiDB、MySQL、Apache Pulsar、Kafka、Confluent | TiCDCオープンプロトコルを提供する | TiCDCは、少なくとも1つの有効なインデックスを持つテーブルのみを複製します。次のシナリオはサポートされていません。
|
TiDB Binlog | 1つのTiDBクラスタを別のTiDBクラスタのセカンダリクラスタとして使用するなど、TiDBクラスター間の増分レプリケーション | TiDB | TiDB、MySQL、Kafka、増分バックアップファイル | リアルタイムのバックアップと復元をサポートします。災害復旧のために復元するTiDBクラスタデータをバックアップします | 一部のTiDBバージョンと互換性がありません |
sync-diff-inspector | データベースに保存されているデータをMySQLプロトコルと比較する | TiDB、MySQL | TiDB、MySQL | 少量のデータに一貫性がないシナリオでデータを修復するために使用できます |
TiUPを使用してツールをインストールする
TiDB v4.0以降、TiUPは、TiDBエコシステム内のさまざまなクラスタコンポーネントの管理を支援するパッケージマネージャーとして機能します。これで、1つのコマンドを使用して任意のクラスタコンポーネントを管理できます。
手順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