innochecksum prints checksums for
InnoDB files. This tool reads an
InnoDB tablespace file, calculates the
checksum for each page, compares the calculated checksum to the
stored checksum, and reports mismatches, which indicate damaged
pages. It was originally developed to speed up verifying the
integrity of tablespace files after power outages but can also
be used after file copies. Because checksum mismatches will
InnoDB to deliberately shut down a
running server, it can be preferable to use this tool rather
than waiting for a server in production usage to encounter the
damaged pages. As of MySQL 5.6.16,
innochecksum supports files greater than 2GB
in size. Previously, innochecksum only
supported files up to 2GB in size.
If checksum mismatches are found, you would normally restore the tablespace from backup or start the server and attempt to use mysqldump to make a backup of the tables within the tablespace.
Invoke innochecksum like this:
innochecksum supports the following options. For options that refer to page numbers, the numbers are zero-based.