管理者チェックサムテーブル
ADMIN CHECKSUM TABLE
ステートメントは、テーブルのデータとインデックスの CRC64 チェックサムを計算します。このステートメントは、インポート操作が正常に完了したことを確認するために、 TiDB Lightningなどのプログラムによって使用されます。
あらすじ
- AdminStmt
- TableNameList
AdminStmt ::=
'ADMIN' ( 'SHOW' ( 'DDL' ( 'JOBS' Int64Num? WhereClauseOptional | 'JOB' 'QUERIES' NumList )? | TableName 'NEXT_ROW_ID' | 'SLOW' AdminShowSlow ) | 'CHECK' ( 'TABLE' TableNameList | 'INDEX' TableName Identifier ( HandleRange ( ',' HandleRange )* )? ) | 'RECOVER' 'INDEX' TableName Identifier | 'CLEANUP' ( 'INDEX' TableName Identifier | 'TABLE' 'LOCK' TableNameList ) | 'CHECKSUM' 'TABLE' TableNameList | 'CANCEL' 'DDL' 'JOBS' NumList | 'RELOAD' ( 'EXPR_PUSHDOWN_BLACKLIST' | 'OPT_RULE_BLACKLIST' | 'BINDINGS' ) | 'PLUGINS' ( 'ENABLE' | 'DISABLE' ) PluginNameList | 'REPAIR' 'TABLE' TableName CreateTableStmt | ( 'FLUSH' | 'CAPTURE' | 'EVOLVE' ) 'BINDINGS' )
TableNameList ::=
TableName ( ',' TableName )*
例
テーブルt1
を作成します。
CREATE TABLE t1(id INT PRIMARY KEY);
t1
にデータを挿入します。
INSERT INTO t1 VALUES (1),(2),(3);
t1
のチェックサムを計算します。
ADMIN CHECKSUM TABLE t1;
出力は次のとおりです。
+---------+------------+----------------------+-----------+-------------+
| Db_name | Table_name | Checksum_crc64_xor | Total_kvs | Total_bytes |
+---------+------------+----------------------+-----------+-------------+
| test | t1 | 10909174369497628533 | 3 | 75 |
+---------+------------+----------------------+-----------+-------------+
1 row in set (0.00 sec)
MySQLの互換性
このステートメントは、MySQL 構文に対する TiDB 拡張機能です。