新しく立てたサーバー(CentOS 5.3)でエラーが出て、ハマったのでメモ。
ローカルのMySQLには問題無く接続できて、外部のMySQLサーバーにも
# mysql -h 192.168.xxx.xxx -u root -p
と、コマンドでは繋がるけど、Apache + PHPを経由すると、
Can’t connect to MySQL server on 192.168.xxx.xxx (13)
というエラーが出る。
この時点でSELinuxの設定を疑うべきでした。意味もなくphp.iniのmysql.default_socketを設定したりmy.cnfを弄ったり、半日ほど迷走しておりました。
で、一応、ポリシーをアップデートしたりしつつ
# yum -y update selinux-policy-targeted
最終的にhttpdで外部ネットワークへの接続を許可していないだけでした。
# setsebool -P httpd_can_network_connect 1
このへんのSELinuxの設定って、最初に1回設定したら、弄らないことが多いのですぐ忘れます。
Can't connect to MySQL server on 192.168.xxx.xxx (13)
Programming

コメント
同じ原因で悩んでいました。無事解決しました。ありがとうございました。
ありがとうございます!
お陰様で解決しました。
httpdやphpのインストール順序を変更してみたり・・・半日以上悩んでいました^^;
勉強になりました。