IMHO This is a "bad idea". Email is files, and the best way to store files is on the file system. You'll find that actually storing the messages in MySQL would be very very slow, especially given MySQL's table level locking (I've done it for a mailing list management thing I wrote, with much regret).
What you could do is use something like LDAP to store the login information, and then use the LDAP database for authentication (which your users can add accounts to) while using something like postfix (which can return mailDrop from LDAP) instead of sendmail for the actual delivery. LDAP is very fast for queries, which makes it uniquely suited to this task.
Although I'm prevented from explaining how in detail, we're doing something like this with great success on Solaris (ldap auth is built in on solaris 8, which is now free in most cases). If you're using linux, you may find this useful http://people.redhat.com/alikins/ldap/ldap.html
Best of luck