【问题标题】:Cannot connect to mysql localhost无法连接到 mysql 本地主机
【发布时间】:2016-02-12 16:27:09
【问题描述】:

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

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

任何帮助都会很棒。

谢谢

【问题讨论】:

  • 这不是真正的编程问题,也不是 Apache 问题。看起来您只是在寻找有关如何使用 MySQL 的教程。尝试指定密码。

标签: mysql apache


【解决方案1】:

您需要配置防火墙以允许其他计算机访问运行 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/ 例如,如果那是您的知识产权。

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

【讨论】:

    【解决方案2】:

    我之前也有同样的问题,你需要给用户权限才能连接到本地主机,从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;
    

    【讨论】:

    • 这听起来更像是评论而不是答案
    猜你喜欢
    • 2011-09-08
    • 1970-01-01
    • 2011-10-16
    • 2014-11-06
    • 2016-01-01
    • 2021-06-20
    • 2015-07-26
    相关资源
    最近更新 更多