Bug #87723 mysqlbackup cannot work with mysql5.7 using innodb page-level compression
Submitted: 11 Sep 2017 7:55 Modified: 11 Sep 2017 10:10
Reporter: Shuosi Wang Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Enterprise Backup Severity:S2 (Serious)
Version:4.1.0 Linux-3.16.0-4-amd64-x86_64 [2017/ OS:Debian (jessie)
Assigned to: CPU Architecture:Any
Tags: checksum, innodb page-level compression, mysqlbackup

[11 Sep 2017 7:55] Shuosi Wang
Description:
I'd used the below two command to test innodb  page-level compression.

alter table idname COMPRESSION="zlib";
optimize table idname;

after that, when I run mysqlbackup command try to backup the database, it cannot work:

InnoDB: End of page dump
 mysqlbackup: INFO: InnoDB: Uncompressed page, stored checksum in field1 3716079228, calculated checksums for field1: crc32 2956098786/2399049417, innodb 2064067694, none 3735928559, stored checksum in field2 0, calculated checksums for field2: crc32 2956098786/2399049417, innodb 3035593887, none 3735928559,  page LSN 0 26416147, low 4 bytes of LSN at page end 0, page number (if stored to page already) 1, space id (if created with >= MySQL-4.1.1 and stored already) 26.
 mysqlbackup: WARNING: The value of 'innodb_checksum_algorithm' option provided to mysqlbackup might be incompatible with server config.

 mysqlbackup: ERROR: Page at offset 16384 in /home/mysql/test/test/idname.ibd seems corrupt!

backup command:
mysqlbackup --defaults-extra-file=/etc/mysql/test.cnf --host=127.0.0.1
        --port=9999 --user=root --password=xxx --backup-image=./datadir/cbg.img
        --backup-dir=/home/backup/testback/ --sleep=300 --skip-binlog
        --skip-relaylog backup-to-image

And I try to use innobackupex, it can backup successfully:
innobackupex --defaults-extra-file=/etc/mysql/my.logdb.cnf \
    --host=127.0.0.1 --port=9999 --user=root --password=xxxxx \
    --rsync --no-timestamp --parallel=8 --throttle=100 /home/backup/testback

I try to disable page compression and then re-run the backup command. It works.
This is the command of disable page compression:

alter table idname COMPRESSION="None";
optimize table idname;

How to repeat:
using mysqlbackup to backup the database which use innodb page compression.

Suggested fix:
update mysqlbackup to support innodb page compression.
[11 Sep 2017 10:10] MySQL Verification Team
Hello Soure won,

Thank you for the report and feedback!
Verified as described with latest MEB build.

Thanks,
Umesh
[11 Sep 2017 10:17] MySQL Verification Team
Confirmed with Jothir, this is duplicate of internally logged bug

24366571 - MEB FAILS TO BACKUP TABLES WITH INNODB TRANSPARENT PAGE COMPRESSION