事象
PHP の mysqli モジュールを使ってDBに接続したら、下記エラーが発生
Warning: mysqli::mysqli(): (HY000/2002): No such file or directory in ...
原因
mysql.sock が PHP が想定している場所(/tmp/mysql.sock)にないため。
対処
sockの場所を変えるか、コンパイルして場所の指定を行うとよい。
■sockの場所を変える。
# vi /etc/my.cnf [mysqld] socket=/tmp/mysql.sock [client] socket=/tmp/mysql.sock
■再コンパイル
# ./configure ... --with-mysql-sock=/var/lib/mysql/