
初歩の初歩みたいな質問で申し訳ないのですが、次の条件のとき、mysqlへの接続ができません。
CentOS7
mysql5.6.21
php5.4.16
apache2.4.6
をインストール
myqslを起動し、データベース、DBユーザを作成。
mysql上で データベース、ユーザを指定してのログインは確認済み。
PHPプログラムにて、
//connect.php <?php $link = mysql_connect('localhost', 'test', 'testpass'); if (!$link) { die('接続できませんでした: ' . mysql_error()); } echo '接続に成功しました'; mysql_close($link); ?>
php connect.php
とコマンドライン上で実行。接続に成功を確認。
apacheを起動し、ドキュメントルートをconnect.phpがあるディレクトリに設定。
ブラウザより確認すると、以下のようなエラー。
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'
どうやら、Apacheを通しての接続ができないようで、なぜこの様になるか検討が付きません。
apacheの起動ユーザはapacheで、connect.phpや、このファイルを配置しているディレクトリの所有ユーザもapacheにしています。
mysqlの起動ユーザはmysqlで、mysql.sockも該当の場所に存在しています。
さっぱりわからないのでご教授ねがいます。