I have a production server with mysql database that keeps going offline. I have to restart mysqld to bring it back up. This happens about twice a day. Running Software: fedora 12 php 5.3.1 with cgi/fastcgi mysql 5.44.1 with odbc support enabled apache 2.2.14-1 Mainly this server handles data entry through a web interface. However, we have some data reports that we run through microsoft access (there is a msaccess db that some users have on their desktops that can perform these queries and reports) that links to the tables with an odbc driver version 5.1 How can I track this down? I don't see anything unusual in /var/log/mysqld.log Observations 1. Just migrated to new fedora 12 server from fedora 10 server. Same problem existed on the previous server. 2. Running msaccess queries does not cause mysqld to freeze. These queries do execute successfully. I suspect some sort of memory problem since the server will be fine for a while but then fail after a period of increased use for apparently no reason. Could this be related to Innodb settings for mysql or perhaps hard drive "write-back" cache? Would adjusting my settings in /etc/my.cnf be helpful? http://dev.mysql.com/doc/refman/5.0/en/innodb-configuration.html Stumped ... any help - thanks in advance!
I'm assuming the same. Do you have munin installed? It might help you track down the problem. Also, you can install monit which can automatically start MySQL if it's not running. http://www.howtoforge.com/server_monitoring_with_munin_monit_fedora_7
I installed munin and monit. Thank you! I am close to solving this but here is the situation now. The munin memory chart suggests to me that I have a memory leak in an application. It rises linearly until the swap is nearly maxed out then drops off shortly before mysql is noted to fail. Check it out: http://picella.com/wiki/docs/memory.pdf I have a number of php scripts running ... perhaps I have persistent connections somewhere? I have written a number of my own php scripts and I can see in mysql that one there are quite a few processes open by one of the database users that my scripts rely on. Hmmm... Does anyone know how to track this down? Shouldn't php scripts close all open connections at the termination of the script? See the attachement http://picella.com/wiki/docs/memory.pdf
php memory leak problem Looks like I solved this problem. It had to do with $xml = simplexml_load_file(URL); I released the memory at the end of the script with unset($xml); ... and now everything is good. Here is the new chart. You can see the memory leak is not occurring anymore when running this script every 5 min in crontab. http://picella.com/wiki/docs/memory2.pdf