Selinux is preventing apache to access mysql.
Posting actual error messages (and relevant parts of the policy) can speed up problem solving.
the machine I am trying to fix is a remote production machine which can not be rebooted and also mysqld can not be restarted
Setting SELinux to "permissive" or disable it for a service is a bypass, not a solution. Reading up on SELinux (man 8 httpd_selinux ?) and using a staging box to practice policy checking and building on before deploying it to a production server is the best advice I can give as I don't use SELinux. The Tresys tools look most promising (being documented, used, updated, maintained and all that):
Policy Tools for SELinux: http://www.tresys.com/selinux/selinu...cy_tools.shtml
SELinux policy editor: http://www.selinux.hitachi-sk.co.jp/...selpe-top.html
Tools for Managing SELinux: http://cops.csci.unt.edu/projects/selinux/main.html
Again, posting actual error messages and relevant parts of the policy can speed up problem solving.