【问题标题】:How do I allow mysql client connections to be established with our mysql web server?如何允许与我们的 mysql Web 服务器建立 mysql 客户端连接?
【发布时间】:2014-01-10 11:07:47
【问题描述】:

似乎网络服务器阻止我更改用户的权限。它不允许我 GRANT ALL ON foo.* TO bar@'202.54.10.20' IDENTIFIED BY 'PASSWORD';并为我正在使用的用户名返回拒绝访问的错误消息。

文件管理器中的文件夹 etc 似乎也是空的,而在下面给出的链接中,它表明可以在 etc 文件夹中的 my.cnf 中编辑绑定地址。

如何允许任何计算机远程访问我的 mysql 数据库?

http://www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html

【问题讨论】:

  • 您使用哪个用户连接?您可以选择/修改该用户的数据吗?能否显示“select user,host from mysql.user;”的结果?
  • 您确定您登录的是root 或其他有权授予权限的用户吗?
  • show grants; 对您的用户的结果是什么?您需要特权GRANT OPTION。见dev.mysql.com/doc/refman/5.1/de/grant.html

标签: mysql


【解决方案1】:

my.cnf 中的bind 选项不是那个问题(因为你可以连接,MySQL 服务器就是不让你进去),从截图来看,你似乎没有编辑权限无论如何,那个文件。

很可能,您的请求不是来自202.54.10.20,或者您输入了错误的用户名/密码。如果 Web 应用程序与 MySQL 服务器在同一台机器上运行,则连接将来自 127.0.0.0/8 范围内的某个位置。

查看您的网络应用程序中的连接字符串:

  • 如果是公共 IP 地址,请检查用户名/密码和原始 IP。
  • 如果它以127. 开头,则授予您的本地地址。
  • 如果是localhost,则您通过 Unix 套接字而不是 TCP 连接。这是一件好事,您可以简单地 GRANT 到 localhost。

【讨论】:

    【解决方案2】:

    发出这个命令:

    GRANT ALL ON foo.* TO bar@'202.54.10.20' IDENTIFIED BY 'PASSWORD'; 
    

    您必须先连接到数据库。所以如果你没有远程访问数据库的权限,你应该去数据库服务器主机本地登录,使用root@localhost。

    【讨论】:

      【解决方案3】:

      我刚刚发现有一个选项与我希望它做的事情基本相同。用户可以选择启用对其客户端的远程数据库访问。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-12-10
        • 1970-01-01
        • 1970-01-01
        • 2021-11-06
        • 1970-01-01
        • 1970-01-01
        • 2023-03-21
        • 2013-04-10
        相关资源
        最近更新 更多