我在我的Mac上使用os X yosemite。我最近一直面临着PHP和Mysql连接的问题。我无法使用此语句将PHP连接到mysql
$link = mysql_connect("localhost",$username,$passwd);
if($link)
{
echo "Connection successful";
}
else
{
$msg=mysql_error();
echo $msg;
}
我已经看到一些建议通过互联网链接一些袜子文件(我为了不理解和记录我所做的事情而疯狂于myswl)。在袜子改变之后,它运作良好。现在我重新启动了机器,几天后,我无法直接连接到mysql以及通过PHP连接到mysql。我收到以下错误。
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/mysql/mysql.sock' (2)
我尝试了修改php.ini的建议,但没有帮助。
感谢您的帮助。
这就是PHP.ini的样子:
; Default socket name for local MySQL connects. If empty, uses the built-in
; MySQL defaults.
; http://php.net/pdo_mysql.default-socket
pdo_mysql.default_socket= tmp/mysql.sock as well as /var/mysql/mysql.soc
-------------------------------------------------------------------------------------------
More information
-----------------
mymac:mysql abc$ cd /var/mysql
mymac:mysql abc$ ls -ltr
/*
lrwxr-xr-x 1 root wheel 15 Feb 6 2014 mysql.soc -> /tmp/mysql.sock
lrwxr-xr-x 1 root wheel 15 Nov 30 10:07 mysql.sock -> /tmp/mysql.sock */
-----------------
答案 0 :(得分:0)
我注意到当您连接到localhost
时,会使用套接字连接器,但是当您连接到127.0.0.1
时,会使用TCP / IP连接器。如果套接字连接器未启用/工作,您可以尝试使用127.0.0.1
。
或强> 使用
配置my.cnf(通常在/ etc / mysql /文件夹中)文件socket=/var/lib/mysql/mysql.sock
检查您是否正在运行MySQL
。
还尝试将您的权限更改为mysql文件夹,您可以尝试:
sudo chmod -R 755 /var/lib/mysql/
为我解决了这个问题