Samuli, thank you very much for this reply, it was very helpful. The problem was that by default mysql threads stay around for a very long time (8 hours), waiting to see if the client still needs them. That way a lot of threads can build up (many more than the number of apache processes). So I reduced the variable wait_timeout to 30. My suspicion is that really the wait_timeout of a mysql connection does not have to be longer than the KeepAliveTimeout of an apache connection. But I really don't know enough about how these connections work to be sure.