In the file slave.sql
, modify the top line, delete -log
. Then re-diff your files. If that's the only difference (and it appears to be), then there's no problem - the data part of your mysqldump
is identical! (The small "difference" appears to be in the header generated by mysqldump
).
A checksum will vary greatly even if the file contents differ by only one bit! A discrepancy of 4 characters is, to all intents and purposes, enormous in this context.
From here:
Depending on its design goals, a good checksum algorithm will usually
output a significantly different value, even for small changes made to
the input. This is especially true of cryptographic hash functions,
which may be used to detect many data corruption errors and verify
overall data integrity;
(and the really important bit)
if the computed checksum for the current data
input matches the stored value of a previously computed checksum,
there is a very high probability the data has not been accidentally
altered or corrupted.
This is a facinating topic all in its own right and the maths gets very difficult very quickly. Just one thing worthy of note is the "Birthday attack
".
This means that even if you have matching checksums, there is a small (in reality, infinitesimal) possibility that your data does not match. Day-today, this is not a problem - included for completeness.
--no-check-binlog-format
option