我有一个 cakephp 应用程序在我的本地计算机(mac osx)上运行良好一段时间,然后突然我意识到我无法连接到 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);
我检查过,没有文件//var/mysql/mysql.sock。它实际上在/tmp/mysql.sock中
我尝试更改 php.ini.default 以匹配上面的内容,但它已经设置为在 /tmp/ 中查找本地连接。为什么,错误从何而来?
有人遇到过类似的错误吗?
Thanks,
Jonesy
尝试在 APP/config/database.php 中传递 mysql.sock 文件的绝对路径
<?php
class DATABASE_CONFIG {
var $default = array(
'driver' => 'mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'dbUser',
'password' => 'dbPassword',
'database' => 'dbName',
'prefix' => '',
'port' => '/path/to/mysql.sock'
);
}
这比通过本地连接的 IP 运行要好,因为套接字连接要快得多。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)