大约一周前,我在我的 Mac OS 10.6 上安装了 MySQL,经过一番尝试后,它就可以正常工作了。它与 python MySQLdb 集成,我还让 Sequel Pro 连接到数据库。但是,php 不会访问服务器。即使在我将 php.ini 文件添加到 /etc/ 并将其指向 Sequel Pro 正在使用的同一个 sock 之后:/tmp/mysql.sock。
但是现在我根本无法访问本地服务器。据我所知,我的计算机上的任何地方都没有 mysql.sock 文件,不在 /tmp/ 或其他任何地方。
我可以从终端启动 mysql 服务器,但它会在一分钟后自动将我注销:
110425 17:36:18 mysqld_safe Logging to '/usr/local/mysql/data/dn0a208bf7.sunet.err'.
110425 17:36:18 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
110425 17:37:58 mysqld_safe mysqld from pid file /usr/local/mysql/data/dn0a208bf7.sunet.pid ended
如果我尝试从命令行调用“mysql”(今天早些时候完美运行):
ERROR 2002 (HY000): Can\'t connect to local MySQL server through socket '/tmp/mysql.sock' (2)
PHP错误当然是类似的:
PHP Warning: mysql_real_escape_string(): [2002] No such file or directory (trying to connect via unix:///tmp/mysql.sock)
另外,我的mysql安装目录下没有“my.cnf”文件:/usr/local/mysql。XAMPP 附带的 mysql 安装有 my.cnf 文件。那些也将默认套接字列为“/tmp/mysql.sock”,但我必须手动更改它们。
有什么想法吗?为什么修改 php.ini 文件也会对 Sequel Pro 产生变化?