CHECK GLOBAL INDEXステートメントを実行して、プライマリテーブルとインデックステーブルの間でデータが一貫しているかどうかを確認し、一貫性のないデータを変更できます。
構文
チェックグローバルインデックスgsi_name [ON tbl_name] [extra_cmd]| パラメーター | 説明 |
gsi_name | 検証が必要なグローバルセカンダリインデックス (GSI) の名前。 |
tbl_name | オプションです。 GSIが存在するプライマリテーブル。 プライマリテーブルの特定の名前を入力すると、システムはGSIテーブルとプライマリテーブルの間のインデックス関係が有効かどうかを確認します。 |
extra_cmd | 予約済みの追加命令。 有効な値:
|
説明
- 一部のシステムリソースは、GSIテーブルのデータが検証または修正されるときに占有されます。 これは、特に、プライマリテーブルまたはインデックステーブルのデータがロックされ、修正操作中にバッチで修正される場合に発生します。 これらの操作は、オフピーク時に実行することを推奨します。 GSIの使用方法の詳細については、「グローバルセカンダリインデックスの使用」をご参照ください。
- 大きなテーブルのGSIの検証には長い時間がかかる場合があります。 HINTを使用してPURE_ASYNC_DDL_MODEを指定し、純粋な非同期モードでデータ定義言語 (DDL) ステートメントを実行できます。 詳細については、「DDL実行エンジンの制御パラメーター」をご参照ください。
例
- 検証のために次のステートメントを実行できます。
mysql> CHECK GLOBAL INDEX 'g_i_check ';- 検証中にエラーが報告されない場合は、次の結果が返されます
。| GSI_TABLE | ERROR_TYPE | ステータス | PRIMARY_KEY | 詳細 | + ----------- ------------------------------------------------- ----------------------------- + | 'g_i_check '| 概要 | -- | -- | OK (7025/7025行チェック) | + ----------- ------------------------------------------------- ----------------------------- + 1行セット (1.40秒) - 検証中にエラーが報告された場合、次の結果が返されます
。+ ------------ + ------------- + ----------------------- + ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ + | GSI_TABLE | ERROR_TYPE | ステータス | PRIMARY_KEY | 詳細 | + ----------- ------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ + | 'g_i_check '| ORPHAN | FOUND | (100722) | {"GSI":{"id":100722,"c_timestamp_6":"2000-01 00:00:00:00. 000000","c_timestamp_3":"2000-01 00:00.000" 、"c_timestamp_1":"00:01-c01": 0 "。" OTkAAAAAAAAAAA=="," c_int_32 ":271}} | | 'g_i_check '| CONFLICT | (108710) | {"Primary":{"id":108710,"c_timestamp_6":"2000-01 00:00:00.000000","c_timestamp_3":"2000-01 00:00.000" 、"c_timestamp_1":"2000-01" 00:01-00 "、" 00:01 ": 2000" "c_int_32":255} 、"GSI":{"c_int_32_un":123456、"id":108710、"c_timestamp_6":"2000-01 00:00:00.000000" 、"c_timestamp_3":"2000-01 00:00.000" 、"c_timestamp_1":":" 00:01 "00:01-" 、"2000。" c_int_32 ":255}} | | 'g_i_check '| MISSING | (100090) | {"Primary":{"id":100090,"c_timestamp_6":"2000-01 00:00:00.000000","c_timestamp_3":"2000-01-01 00:00:00-" reb_blo_" "00:00" 、"c_blo_b00" 、"00:01" 。"c_int_32":280}} | | 'g_i_check '| 概要 | -- | -- | 3エラーが見つかりました (7025/7025行がチェックされました) | + ----------- ------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ + セットの4列 (1.92秒)説明 データに複数の種類のエラーがある場合、同じデータ行に対して複数のERROR_TYPE値が返されます。
- 検証中にエラーが報告されない場合は、次の結果が返されます
- 修正のために次のステートメントを実行できます。
mysql> CHECK GLOBAL INDEX g_i_check CORRECTION_BASED_ON_PRIMARY;次の結果が返されます。
+ ----------- ------------------------------------------------- ------------------------------------------------------------------------ + | GSI_TABLE | ERROR_TYPE | ステータス | PRIMARY_KEY | 詳細 | + ----------- ------------------------------------------------- ------------------------------------------------------------------------ + | 'g_i_check '| 概要 | -- | -- | | 完了しました。 SQL: { CHECK GLOBAL INDEX 'g_i_check 'SHOW; } を使用して結果を取得します。 | + ----------- ------------------------------------------------- ------------------------------------------------------------------------ + 1行セット (1.40秒) - 次のステートメントを実行して、最新の検証または修正のレポートを表示できます。
mysql> CHECK GLOBAL INDEX 'g_i_check 'SHOW;次の結果が返されます。
+ ----------- ---------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ + | GSI_TABLE | ERROR_TYPE | ステータス | PRIMARY_KEY | 詳細 | ------------ --------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ + | 'g_i_check '| MISSING | REPAIRED | (100090) | {"Primary":{"id":100090,"c_timestamp_6":"2000-01 00:00:00:00. 000000","c_timestamp_3":"2000-blo_b01" 00:00 "、" blo_b01 "、" 00:00: "、" "c_int_32":280}} | | 'g_i_check '| CONFLICT | REPAIRED | (108710) | {"Primary":{"id":108710,"c_timestamp_6":"2000-01 00:00:00.000000","c_timestamp_3":"2000-01 00:00.000":"2000-c01" 00:00.000 ":" 00:00 "" c_int_32 ":255} 、" GSI ":{" c_int_32_un ":123456、" id ":108710、" c_timestamp_6 ":" 2000-01 00:00:00.000000 "、" c_timestamp_3 ":" 2000-01 00:00.000 "、" c_timestamp_1 ":":"00:01" 00:01-"、" 2000。"c_int_32":255}} | | 'g_i_check '| ORPHAN | REPAIRED | (100722) | {"GSI":{"id":100722,"c_timestamp_6":"2000-01-01 00:00:00.000000","c_timestamp_3":"2000-01 00:00.000" 、"c_timestamp_1:":"00:01-" 。"OTkAAAAAAAAAAA==","c_int_32":271}} | | 'g_i_check '| 概要 | -- | -- | 3つのエラーが見つかりました (7025/7026行がチェックされました) 。終了時間: 2020-01-13 14:41:51.0 | ------------ --------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ + セットの4列 (0.02秒)
| 列名 | 説明 |
| GSI_TABLE | GSIの名前。 |
| ERROR_TYPE | エラータイプ。 有効な値:
|
| ステータス | ステータス 有効な値:
|
| PRIMARY_KEY | 主キー。 |
| 詳細 | エラーの詳細。 |