php连接mysql报错No such file or directory;mysql的mysql.sock 文件路径查找

554 阅读1分钟

php连接mysql报错No such file or directory

php测试文件如下:
<?php
$con = mysql_connect("localhost","root","123456");
if(!$con)
{
    die('Could not connect: '. mysql_error());
}
else
{
echo  "ok";
}
?>
访问后提示:
Warning: mysql_connect(): No such file or directory  in /usr/local/nginx/html/mysql.php on line   3 
Could not connect: No such file or directory

解决方案

登陆mysql    mysql  -hlocalhost -uroot -p123456

输入status,输出如下图

image.png

记下UNIX socket路径   /var/run/mysqld/mysqld.sock

查看/tmp/mysql.sock,不存在这个文件,那么建个Link

cd /tmp
ln -s /var/run/mysqld/mysqld.sock mysql.sock

重新访问php文件,成功连接。
以上是一种情况,另外一种情况: 存在/tmp/mysql.sock 但是不存在 /var/run/mysqld/mysqld.sock

cd /var/run

mkdir mysqld

cd mysqld

ln -s /tmp/mysql.sock mysql.sock