Question :
I am planning to change some large MyISAM
tables in my MySQL database into InnoDB
.
This is because I am having performance problems where large and complex updates (updating a few million rows in one go) are stopping users from concurrently accessing that tables.
I understand that if I convert the table to InnoDB then the writes/updates will cause row locking rather than table locking.
If I do this, Will have have to review all my SQL selects/insert statements
, and my stored procedures, and make any changes due to the engine change, or will they all ‘just work’?
Answer :
I don’t think you need to change any SQL statements and SP's
, They should work as they were before.
You need to keep in mind some points
-
If you have MySQL version 5.5 or below and you have
FULL TEXT index
on Table then this is a issue,InnoDB
doesn’t support FULL TEXT index up to MySQL 5.5, They are supported inMySQL 5.6
and above. -
If you have
Spatial Indexes
on table, They are yet not supported inInnoDB
engine
There are a lot of other points that you should keep in mind are, Please must have a look at some great links which suggest what are various things you should consider in migrating table from MyISAM to InnoDB