Take the 2-minute tour ×
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

I have multiple tables in a mysql database. Each table has about 10 million rows. I have multiple queries, and often need to join multiple tables in every query, which seems to be causing some performance issues.

Currently I'm using Myisam for all tables - all tables has indexes on all columns that I join on. The columns that I join on are int and varchar(6) types.

Are there any good guidelines when designing tables to improve execution time for join intensive queries?

Should I perhaps switch to InnoDB? I tried creating a new table, with InnoDB as storage engine and my varchar(6) column as a primary key, but I saw no performance gain at all when joining against that table.

Thank you

share|improve this question
I think you should give us an example of a multiple-join query that is slow, along with the table definitions. Moving to InnoDB may help for sure (or maybe not, MySQL has not the best efficiency when joining many large tables) but there may be other issues that we can't know without more info. –  ypercube Jul 12 '13 at 22:58
add comment

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.