call mtr.add_suppression("InnoDB: Block in space_id .* in file .* encrypted."); call mtr.add_suppression("Plugin 'file_key_management' .*"); call mtr.add_suppression("Plugin 'InnoDB' init function returned error."); call mtr.add_suppression("Plugin 'InnoDB' registration as a STORAGE ENGINE failed."); call mtr.add_suppression("InnoDB: Read operation failed for tablespace .*"); call mtr.add_suppression("InnoDB: Database page corruption on disk or a failed.*"); call mtr.add_suppression("InnoDB: Recovery read page .*"); call mtr.add_suppression("InnoDB: The page \[page id: space=[0-9]+, page number=[0-9]+\] in file test/t2 cannot be decrypted."); call mtr.add_suppression("InnoDB: The page \[page id: space=[0-9]+, page number=[0-9]+\] in file test/t3 cannot be decrypted."); call mtr.add_suppression("InnoDB: The page \[page id: space=[0-9]+, page number=[0-9]+\] in file test/t4 cannot be decrypted."); call mtr.add_suppression("InnoDB: The page \[page id: space=[0-9]+, page number=[0-9]+\] in file test/t1 cannot be decrypted."); call mtr.add_suppression("InnoDB: Missing MLOG_FILE_NAME or MLOG_FILE_DELETE .*"); call mtr.add_suppression("InnoDB: Plugin initialization aborted .*"); call mtr.add_suppression("InnoDB: ############### CORRUPT LOG RECORD FOUND ##################"); # Restart mysqld --file-key-management-filename=keys2.txt # Wait max 10 min for key encryption threads to encrypt all spaces SET GLOBAL innodb_file_format = `Barracuda`; SET GLOBAL innodb_file_per_table = ON; create table t1(a int not null primary key auto_increment, c char(250), b blob, index(b(10))) engine=innodb row_format=compressed encrypted=yes encryption_key_id=4; create table t2(a int not null primary key auto_increment, c char(250), b blob, index(b(10))) engine=innodb row_format=compressed; create table t3(a int not null primary key auto_increment, c char(250), b blob, index(b(10))) engine=innodb encrypted=yes encryption_key_id=4; create table t4(a int not null primary key auto_increment, c char(250), b blob, index(b(10))) engine=innodb; begin; insert into t2 select * from t1; insert into t3 select * from t1; insert into t4 select * from t1; commit; SET GLOBAL innodb_flush_log_at_trx_commit=1; begin; update t1 set c = repeat('secret3', 20); update t2 set c = repeat('secret4', 20); update t3 set c = repeat('secret4', 20); update t4 set c = repeat('secret4', 20); insert into t1 (c,b) values (repeat('secret5',20), repeat('secret6',6000)); insert into t2 (c,b) values (repeat('secret7',20), repeat('secret8',6000)); insert into t3 (c,b) values (repeat('secret9',20), repeat('secre10',6000)); insert into t4 (c,b) values (repeat('secre11',20), repeat('secre12',6000)); COMMIT; # Kill the server # restart # Kill the server # Restart mysqld --innodb-force-recovery=1 # Kill the server # Restart mysqld --file-key-management-filename=keys2.txt drop table t1, t2,t3,t4;