If the problem is that it takes too long to retrieve query results, you probably haven't built the right indexes. Use the mysql client program to run the queries in the webapp from the command line and see which take excessively long to complete.
SQL performance problems usually indicate a problem with the database logic more than a problem with the hardware or server software.
I don't use MySQL enough to know if it has an equivalent to PostgreSQL's ANALYZE command, but if so, that might provide some insights.
Bookmarks