I don't know of any "good" ones, but an "ok" one is called Music Brainz. It basically reads your files and tries to tag them. However, it only works if someone else has submitted the tag info for the song. So, if your taste in music strays from the mainstream, chances are your songs won't be in the database.
See:
http://www.musicbrainz.org