ADMIN CHECKSUM TABLE
The ADMIN CHECKSUM TABLE statement calculates a CRC64 checksum for the data and indexes of a table.
The checksum is calculated based on table data and properties such as table_id. This means that two tables with the same data but different table_id values will get different checksums.
After importing a table using TiDB Lightning, TiDB Data Migration, or IMPORT INTO, ADMIN CHECKSUM TABLE <table> is executed by default to validate data integrity.
Synopsis
- AdminChecksumTableStmt
- TableNameList
AdminChecksumTableStmt ::=
'ADMIN' 'CHECKSUM' 'TABLE' TableNameList
TableNameList ::=
TableName ( ',' TableName )*
Examples
Create table t1:
CREATE TABLE t1(id INT PRIMARY KEY);
Insert some data into t1:
INSERT INTO t1 VALUES (1),(2),(3);
Calculate the checksum for t1:
ADMIN CHECKSUM TABLE t1;
The output is as follows:
+---------+------------+----------------------+-----------+-------------+
| Db_name | Table_name | Checksum_crc64_xor | Total_kvs | Total_bytes |
+---------+------------+----------------------+-----------+-------------+
| test | t1 | 10909174369497628533 | 3 | 75 |
+---------+------------+----------------------+-----------+-------------+
1 row in set (0.00 sec)
MySQL compatibility
This statement is a TiDB extension to MySQL syntax.