MySQL Forums
Forum List  »  InnoDB

Re: Error while creating the table in InnoDB
Posted by: Rick James
Date: May 08, 2010 09:30AM

I don't think there is a way to increase the limit. Perhaps there is one in the code, and you could raise it by recompiling.

Which error? Perhaps the nebulous one that says that the table _definition_ is too big. There is (I think) a limit of 64KB on the definition; this includes column names, ENUM values, etc.

100 FOREIGN KEYS is 100 checks during INSERTs. Sure, that keeps the referential integrity good. But it also costs performance.

100 columns in a table? The limit in InnoDB, I think, is 1000. But even 100 it quite clumsy.

Workaround:
Vertical partitioning. That is, look at which fields are used together and which are not, then split off the little-used fields into a parallel table. Or split off fields that are often NULL; this could lead to the new table having fewer rows. (LEFT JOIN can get back the NULLs.) Or split off the TEXT/BLOB fields.

Options: ReplyQuote


Subject
Views
Written By
Posted
Re: Error while creating the table in InnoDB
1008
May 08, 2010 09:30AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.