Custom database names and usernames

This is my biggest issue with this great program right now. I have several MySQL databases, and trying to keep them all straight has become a huge hassle (I've actually printed out a chart to keep them straight). I know that the argument for not allowing custom names is that a user could choose a name that has already been taken. Well how about this then:

If a user wants a database called 'forum' and their username is 'john' then create this database 'john_forum'. Same for database users. This eliminates the fear of creating duplicate databases, since usernames all have to be unique.

If that isn't possible, then how about adding another field to each database, called 'Description' or something similar, where we can at least write what the database is for.

Ultimately, I would really like to see custom names implemented, as it is something that I really miss.

Another option - and one that probably won't be considered - is to somehow give each user their own installation to work with....

I know that's not a good explanation, so let me give an example:

At dreamhost.com, somehow users are given separate MySQL instances to work with. Instead of using 'localhost' as the hostname, users use mysql.theirdomain.com as the hostname. This allows them to use any database name that they wish, since their installation is somehow separated from other users.

The fact of all the user names and databases use the same rule of creation, also seems a security problem. A user can "guess" 2 of the 3 informations that he needs to use a database. He only needs to discover the password.
This showld be an option to use "fixed" database and user names or let the user choose it.