无法连接到mysql localhost

时间:2016-02-12 16:27:09

标签: mysql apache

我是Mac和Web开发的新手。我安装了Apache,Web服务器运行正常。当我输入localhost时,它会显示“It Works”。我也可以通过工作台连接到公司的数据库。

但是当我尝试使用hostname:127.0.0.1创建本地连接时,它说:用户'root'@'localhost'拒绝访问(使用密码:NO)。我不确定是否在解决此问题时是否更改了密码。

任何帮助都会很棒。

由于

2 个答案:

答案 0 :(得分:0)

您需要配置防火墙以允许其他计算机访问运行Apache的PC。对于OSX:http://www.cnet.com/how-to/how-to-enable-web-sharing-in-os-x-mountain-lion/

您可以按“开始”键入cmd,找到Apache计算机的IP地址。在命令窗口中键入:ipconfig /all编辑:刚刚意识到您提到您在Mac上,使用此链接查找您的IP:http://www.wikihow.com/Find-Your-IP-Address-on-a-Mac

当您拥有Apache计算机的IP并将防火墙设置为允许Apache通过可能的端口80时,您可以从本地网络上的其他PC或设备访问它:http://192.168.1.123/例如,如果这是你的IP。

127.0.0.1是本地环回IP。专门针对OSX,这将直接回答您的问题:https://superuser.com/questions/512786/why-does-localhost-and-127-0-0-1-resolve-to-different-locations-on-mac-osc-10-8

答案 1 :(得分:0)

我很久以前遇到同样的问题,你需要赋予用户连接到localhost的权限,是不同的localhost从apache到mysql权限

可能是安全预防措施。您可以尝试添加新的管理员帐户:

mysql> CREATE USER 'yorsh'@'localhost' IDENTIFIED BY 'some_pass';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'yorsh'@'localhost'
->     WITH GRANT OPTION;
mysql> CREATE USER 'yorsh'@'%' IDENTIFIED BY 'some_pass';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'yorsh'@'%'
->     WITH GRANT OPTION;
FLUSH PRIVILEGES;