Defining MySQL without explicit primary keys is a very bad idea.
If there is no PC, MySQL will create an implicit (but very real) integer primary auto-increment primary key.
This PC will be included in each optional key in InnoDB and will determine your primary sort order in MyISAM.
Consequence
You have just slowed down the performance of each selection, insert, and update.
For something wrong.
InnoDB: Extra Search Needed to Retrieve Table Data
In InnoDB, you need to perform an additional search because all secondary indexes refer to the PC, not the rows themselves.
MyISAM:
MyISAM , - 4 , .
InnoDB + MyISAM:
, ; , 1, 2 .
InnoDB:
, , , InnoDB , .
InnoDB:
InnoDB, .
MySQL , , , . , 50% InnoDB - , .
, !

:
http://www.xaprb.com/blog/2006/07/04/how-to-exploit-mysql-index-optimizations/ ( , ).
O'Reilly InnoDB
http://tag1consulting.com/MySQL_Engines_MyISAM_vs_InnoDB
BTW, , , MyISAM, , InnoDB, .
InnoDB , MyISAM , .