title: MySQL InnoDB tables corrupt -- how to fix?
body: <p>While performing a conditional <code>DELETE</code> operation in one of my InnoDB tables, which apparently required some temporary table to be created in ibdata1, the hard disk filled up and mysql crashed. I couldn't get it to start again until I deleted the ibdata1 file (~30 GB).</p>
  
  <p>Now mysql starts again, but all the tables in the database seem to be corrupt (when I do a <code>REPAIR TABLE tablename EXTENDED</code> I get: </p>
  
  <pre><code>+-----------------------------------+--------+----------+---------+
  | Table       | Op     | Msg_type | Msg_text                      |
  +-----------------------------------+--------+----------+---------+
  | mydb.table1 | repair | Error    | Unknown table engine 'InnoDB' |
  | mydb.table1 | repair | error    | Corrupt                       |
  +-----------------------------------+--------+----------+---------+
  </code></pre>
  
  <p>I was using <code>innodb_file_per_table</code> option so that all of my .frm and .ibd files (which are supposed to contain metadata and data, respectively) are all intact (with the same filesizes they had before the crash), in the directory: <code>/var/mysql/data/mydb/</code>. Does anyone know how I could get mysql to recognize these tables with the appropriate data once again?</p>
  
  <p>Thanks!</p>