我有一个在我的macbook上运行的本地Web服务器,我遇到了一个奇怪的问题.我可以使用像Sequel Pro这样的程序访问
MySQL,密码工作和生活很棒.
在PHP中,如果我将db服务器设置为127.0.0.1,那么一切都可以正常工作.
但是,如果我将数据库服务器更改为localhost,则会因“root”@“localhost”错误而拒绝访问.我确保MysqL套接字设置正确,但仍然无法使用localhost.
任何见解都会很棒.谢谢!
除了迈克尔的话,
原文链接:https://www.f2er.com/php/138562.html还有另一个链接:http://dev.mysql.com/doc/refman/5.1/en/connecting.html,它说:
On Unix,MysqL programs treat the host name localhost specially,in a
way that is likely different from what you expect compared to other
network-based programs. For connections to localhost,MysqL programs
attempt to connect to the local server by using a Unix socket file.
This occurs even if a –port or -P option is given to specify a port
number.
它不是典型的tcp / ip连接.如果你有从127.0.0.1:3306到192.168.1.2:3306的本地端口转发,“MysqL -h localhost”将尝试连接到本地unix套接字文件.
它不是特定于你的问题(因为你正在运行PHP),但希望它无论如何都有帮助.