Two things would lead me to using a database:
(a) Your log file has distinct fields, like date logged, id of logged-in user at time of event, module triggering the event, etc; and
(b) You have a need to query against these fields, especially complex queries. Like, "list all the memory overflows triggered by module xyz on weekends".
If, on the other hand, your log file is a series of unrelated messages put out by a variety of modules with no consistent format, so that the only possible create statement for your log file is "create table log (logmessage varchar(500))", then I don't see any clear gain to using a database.
A database will surely be slower: it's always going to take more time to update indexes and do dynamic inserts than to just append to the end of a text file. Writing to a database involves the possibility of data being lost or corrupted due to database problems. This is rare, of course, but presumably the point of a log file is to help you track down problems like data corruption. If your error identification and recovery procedure is based on the assumption that you will never have any errors, then why are you doing it at all? It brings to mind all the lame jokes about the help desk sending out emails alerting people that the email system isn't working.
Personally, I almost always write logs to a simple text file. I can only think of a few occasions when I logged to a database. And the last time I did that was because I didn't have access to the file system on the production server, but could access the database.