# innodb\_file\_per\_table migration

**URL:** <https://forums.percona.com/t/innodb-file-per-table-migration/1396>\
**Category:** Other MySQL® Questions\
**Created:** [April 30, 2010, 4:32pm UTC](https://forums.percona.com/t/innodb-file-per-table-migration/1396 "2010-04-30T16:32:50Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![williamt](https://avatars.discourse-cdn.com/v4/letter/w/977dab/32.png) [@williamt](https://forums.percona.com/u/williamt)\
**Post date:** [April 30, 2010, 4:32pm UTC](https://forums.percona.com/t/innodb-file-per-table-migration/1396/1 "2010-04-30T16:32:50Z")

</div>

I plan on migrating to innodb\_file\_per\_table  
I was going to add the option restart mysql and do an alter table engine=InnoDB on all the innodb tables.

Question is after I do this the main ibdata file will still be  
pretty big I think. Is there anyway to shrink this once all the  
tables are migrated into their own file?

What else is stored in ibdata can I just shut the server down and delete  
the file ?

This is on 4.1.22 btw.

Thanks,  
William

---

<div class="post-metadata">

**Author:** ![xaprb](https://avatars.discourse-cdn.com/v4/letter/x/49beb7/32.png) [@xaprb](https://forums.percona.com/u/xaprb)\
**Post date:** [April 30, 2010, 6:26pm UTC](https://forums.percona.com/t/innodb-file-per-table-migration/1396/2 "2010-04-30T18:26:27Z")

</div>

You’ll still have to dump, delete, recreate, and reload. The main ibdata1 file contains the data dictionary and other stuff you need. You can’t shrink it and you can’t delete it.

---

<div class="post-metadata">

**Author:** ![williamt](https://avatars.discourse-cdn.com/v4/letter/w/977dab/32.png) [@williamt](https://forums.percona.com/u/williamt)\
**Post date:** [April 30, 2010, 6:58pm UTC](https://forums.percona.com/t/innodb-file-per-table-migration/1396/3 "2010-04-30T18:58:52Z")

</div>

Ok thanks Baron will do.
