Hi David, I've seen a similar behavior on our machine. We had someone re-write the code for a particular PHP site that was producing tons of slow queries (while the CPU was 100% idle the script would still take 15 seconds to run its queries) and the problem was (sort of) fixed.
Have a constant look at "mysqladmin processlist", maybe there are tons of mysql processes sitting sleeping. You can adjust the max. wait time for (interactive) connections with: In your "my.cnf", under [mysqld]: set-variable = interactive_timeout=90 set-variable = wait_timeout=90 This will close sleeping connections after 90 seconds. Default is 8 days. However, this is not a real fix for your problems but might help temporary so that mysqld is not taking your server down. This only makes sense if you have sleeping processes (according to "mysqladmin processlist"). Active the sleep log, it will show you which queries take up too much time (> 10 secs): In your "my.cnf", under [safe_mysqld]: log-slow-queries = /var/log/mysql-slow.log "mysqladmin status" will show you how many slow queries you got. Investigate /var/log/mysql-slow.log to find out what the query looked like. Maybe that helps... Regards Markus On Mon, 28 Oct 2002 13:46:52 -0500 "David J. Trombley" <[EMAIL PROTECTED]> wrote: > I now maintain a popular internet sports portal which runs mySQL. > Last weekend, the server (x86 linux) started grinding to a halt. > When I list the processes, there are many, many (much more than the > number of webserver threads!) mysqld threads running at once, sitting > on the CPU for long periods of time. This is new behavior, and when > I restart the mysqld, this situation reliably occurs again in a > minute or so. > > How can I debug/repair this sort of thing? I have no idea what's > going on, and I've never run into this sort of problem before. Is > there any way to get connections to the backend to time out? > > Also, the documentations makes some comment about the default > settings for mysqld not being configured for high-load situations, but > then fails to explain how to do this. Any suggestions? > > -dj > > > --------------------------------------------------------------------- > Before posting, please check: > http://www.mysql.com/manual.php (the manual) > http://lists.mysql.com/ (the list archive) > > To request this thread, e-mail <[EMAIL PROTECTED]> > To unsubscribe, e-mail > <[EMAIL PROTECTED]> Trouble > unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php > > --------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive) To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php