call mtr.add_suppression("InnoDB: Table \"test\".\"t1\" is corrupted. Please drop the table and recreate."); call mtr.add_suppression("InnoDB: Cannot open table test/t1 from the internal data dictionary of InnoDB though the .frm file for the table exists. See http://dev.mysql.com/doc/refman/5.6/en/innodb-troubleshooting.html for how you can resolve the problem."); call mtr.add_suppression("InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page \[page id: space=[0-9]+, page number=[0-9]+\]. You may have to recover from a backup."); # Create and populate the table to be corrupted set global innodb_file_per_table=ON; CREATE TABLE t1 (a INT AUTO_INCREMENT PRIMARY KEY, b TEXT) ENGINE=InnoDB; INSERT INTO t1 (b) VALUES ('corrupt me'); INSERT INTO t1 (b) VALUES ('corrupt me'); # Backup the t1.ibd before corrupting # Corrupt the table Munged a string. Munged a string. # The below SELECT query will return that table is not # in engine because table is corrupted SELECT * FROM t1; ERROR 42S02: Table 'test.t1' doesn't exist in engine INSERT INTO t1(b) VALUES('abcdef'); ERROR 42S02: Table 'test.t1' doesn't exist in engine UPDATE t1 set b = 'deadbeef' where a = 1; ERROR 42S02: Table 'test.t1' doesn't exist in engine CHECK TABLE t1; Table Op Msg_type Msg_text test.t1 check Error Table 'test.t1' doesn't exist in engine test.t1 check status Operation failed # Cleanup DROP TABLE t1;