I am developing a Java application with MySQL 5.6.13. A few days earlier I purchased a new laptop. I forgot to create a dump of application from previous laptop and instead I copied folder of my database(.ibd
and .frm
files) from datadir, when I installed MySQL 5.6.13 in new machine, and I had pasted my database(.ibd
and .frm
files) into datadir. The server is running fine. But in MYYOG IDE, when I open any of tables I am getting this error:
*.ibd files are not enough, they store data, but InnoDB needs a dictionary which is stored in ibdata1.
To recover the tables you'll need a linux box. Then follow instructions in http://www.mysqlperformanceblog.com/2011/05/13/connecting-orphaned-ibd-files/
Or you can try method described by Chris Calender http://www.chriscalender.com/?p=28
In the worst case you'd need to fetch records from ibd files and then reload into fresh InnoDB instance. See instructions here http://www.percona.com/docs/wiki/innodb-data-recovery-tool:mysql-data-recovery:start
UPDATE: Data recovery toolkit moved to GitHub