[ACCEPTED]-MySQL InnoDB database restore-restore

Accepted answer
Score: 14

.frm files are not the data files, they 4 just store the "data dictionary information" (see 3 MySQL manual). InnoDB stores its data in ib_logfile* files. That's 2 what you need in order to do a backup/restore. For 1 more details see here.

Score: 12

Restoring innodb: (assuming your data folder 11 is C:\ProgramData\MySQL\MySQL Server 5.5\data)

  1. Copy the folders of the databases (named after the database name) you want to restore to C:\ProgramData\MySQL\MySQL Server 5.5\data
  2. Copy 10 the 3 ibdata files to the data folder ex. (C:\ProgramData\MySQL\MySQL 9 Server 5.5\data)

  3. Get the size of the _ib_logfile0 8 in MB (it should be the same as _ib_logfile1) by 7 File Right click -> Properties

  4. Edit the mysql 6 config file (mysql\bin\my.ini) for the innodb_log_file_size=343M 5 to be exactly the ibdata files size

  5. Run

    mysqld 4 --defaults-file=mysql\bin\my.ini --standalone 3 --console --innodb_force_recovery=6

  6. Now 2 your data should be back in your database. Export 1 them using phpmysql or any other tool

Score: 4

Oh my... you're in trouble. Shutdown the 14 database. Backup the innodb file. Pray that 13 you did NOTHING after you dropped the database.

The 12 guys at Percona (includes authors of MySQL 11 Performance Blog) should be able to help 10 you out: Percona emergency support.

If you do venture on your own, take 9 this with you: Data Recovery Toolkit for Innodb.

The logistics of it? You 8 have to read every page (the computer term 7 page... 16k block in the case of Innodb) in 6 and rebuild your data that way. It's very 5 low-level work (we're talking open up your 4 hex editor and start counting bytes if the 3 toolkit doesn't do it for you), and if you're 2 not a strongly experienced programmer, you're 1 going to be hurting.

More Related questions