我在本地机器(mac osx)上运行了一个CakePHP应用程序一段时间,突然间发现无法连接到mysql.sock。
我遇到了这个错误:
Warning (2): mysql_connect() [http://php.net/function.mysql-connect]: [2002] No such file or directory (trying to connect via unix:///var/mysql/mysql.sock) [CORE/cake/libs/model/datasources/dbo/dbo_mysql.php, line 540]
dbo_mysql.php的第540行内容如下:
$this->connection = mysql_connect($config['host'] . ':' . $config['port'], $config['login'], $config['password'], true);
我已经检查过了,fle //var/mysql/mysql.sock不存在。它实际上在/tmp/mysql.sock中。
我尝试将我的php.ini.default更改为与上述匹配,但它已经设置为在本地连接中查找/tmp/。为什么,错误来自哪里?
是否有人遇到类似的错误?
谢谢,
Jonesy
127.0.0.1
代替localhost
。 - Pekkalocalhost
,mysql 默认使用本地unix套接字。将主机改为IP地址会强制使用TCP套接字。$config['host'] = '127.0.0.1'
. - Marc B