ターゲット データベースのTiDB Lightning要件

TiDB Lightningを使用する前に、環境が要件を満たしているかどうかを確認する必要があります。これにより、インポート中のエラーが軽減され、インポートが確実に成功します。

ターゲットデータベースの権限

インポート モードと有効な機能に基づいて、ターゲット データベース ユーザーに異なる権限を付与する必要があります。次の表は参考資料です。

特徴範囲必要な権限備考
必須基本関数ターゲットテーブル作成、選択、挿入、更新、削除、ドロップ、変更DROP は、tdb-lightning-ctl がcheckpoint-destroy-all コマンドを実行する場合にのみ必要です。
ターゲットデータベース作成する
必須論理インポートモード情報スキーマ.列選択する
物理インポートモードmysql.tidb選択する
-素晴らしい
- RESTRICTED_VARIABLES_ADMIN、RESTRICTED_TABLES_ADMINターゲット TiDB が SEM を有効にする場合に必要
推奨競合検出、最大エラーlightning.task-info-schema-name に設定されたスキーマ選択、挿入、更新、削除、作成、ドロップ必要ない場合は、値を「」に設定する必要があります。
オプション並行輸入品lightning.meta-schema-name に設定されたスキーマ選択、挿入、更新、削除、作成、ドロップ必要ない場合は、値を「」に設定する必要があります。
オプションチェックポイント.ドライバー = "mysql"チェックポイント.スキーマ設定選択、挿入、更新、削除、作成、ドロップチェックポイント情報がファイルではなくデータベースに保存される場合に必要です

ターゲットデータベースのストレージスペース

ターゲット TiKV クラスターには、インポートされたデータを保存するのに十分なディスク容量が必要です。 標準的なハードウェア要件に加えて、ターゲット TiKV クラスターのstorage容量は、データ ソースのサイズ x レプリカの数 x 2より大きくなければなりません。たとえば、クラスターがデフォルトで 3 つのレプリカを使用する場合、ターゲット TiKV クラスターにはデータ ソースのサイズの 6 倍を超えるstorageスペースが必要です。この式には x 2 が含まれています。その理由は次のとおりです。

  • インデックスには余分なスペースが必要になる場合があります。
  • RocksDB には空間増幅効果があります。

Dumplingによって MySQL からエクスポートされる正確なデータ量を計算することは困難です。ただし、次の SQL ステートメントを使用して、information_schema.tables テーブルのDATA_LENGTHフィールドを要約することで、データ量を見積もることができます。

-- Calculate the size of all schemas SELECT TABLE_SCHEMA, FORMAT_BYTES(SUM(DATA_LENGTH)) AS 'Data Size', FORMAT_BYTES(SUM(INDEX_LENGTH)) 'Index Size' FROM information_schema.tables GROUP BY TABLE_SCHEMA; -- Calculate the 5 largest tables SELECT TABLE_NAME, TABLE_SCHEMA, FORMAT_BYTES(SUM(data_length)) AS 'Data Size', FORMAT_BYTES(SUM(index_length)) AS 'Index Size', FORMAT_BYTES(SUM(data_length+index_length)) AS 'Total Size' FROM information_schema.tables GROUP BY TABLE_NAME, TABLE_SCHEMA ORDER BY SUM(DATA_LENGTH+INDEX_LENGTH) DESC LIMIT 5;

このページは役に立ちましたか?