CREATE INDEX
There's the MySQL documentation on it. Do a quick read over that. You really should have created an index from the databases inception, rather than waiting until now. But it shouldn't be too difficult.
Although indexing your database would help, I feel that it's not the only issue. Have you looked at actually caching some of the pages? That way, when a user browses to your site, they see a cached version, rather than a dynamic one? It wouldn't be that difficult to create a simple cache system. Something like you have a table in a DB that lists the page, and the timestamp of the update. You compare that with the current time. If the current time is say less than 6 hours old, you show the cached version; otherwise, you generate a new page and store that in the cache and update the cache table.
That would really lessen the burden on your RDBMS and speed up serving of pages.