【问题标题】:Access remote MySQL server without editing my.conf无需编辑 my.cnf 即可访问远程 MySQL 服务器
【发布时间】:2013-07-01 16:30:19
【问题描述】:

我想将我的 Django 应用程序(托管在 VPS 上)连接到托管在具有更多内存的另一台服务器上的数据库,这样我就可以运行内容并将内容添加到数据库中,而不会因使用过多内存而被杀死在我的 VPS 上。我看到的关于这个的事情(例如,How to connect to MySQL server on another host?)都涉及编辑my.cnf 和更改bind-address 行。我 a) 没有执行此操作的 root 权限,并且 b) 不想将其他用户的 MySQL 数据库暴露给潜在的安全风险。我尝试编辑~/.my.cnf 来更改bind-address 的东西,但这似乎不起作用。

我还找到了http://www.rackspace.com/knowledge_center/article/mysql-connect-to-your-database-remotely,它建议创建'user'@'remote-ip-address',然后grant 授予该用户权限。我试过了,但是当我尝试mysql -u username -p -h (the server's address) 时,我不断收到ERROR 2003 (HY000): Can't connect to MySQL server on '(the server's address)' (110)

我可以访问 MySQL 的 root 用户,但在我要设置数据库的服务器上没有其他管理员权限。有什么方法可以配置东西,让 Django 无需直接编辑 /etc/mysql/my.cnf 就可以访问这个远程数据库?

【问题讨论】:

    标签: mysql django


    【解决方案1】:

    bind-address 没有指定哪些 IP 可以连接到该服务器,但 MySQL 正在侦听哪个地址。因此,只需将其设置为 0.0.0.0 即可。请确保您拥有使用该地址的用户帐户。检查mysql.user 表。

    解决根访问问题: * 如果你手动安装了 mysql,你就有了 root 访问权限。 * 如果你没有手动安装mysql,而是VPS主机提供的服务,那么bind-address应该是0.0.0.0(或者至少不是127.0.0.1)。如果不是这样,请联系他们,因为他们搞砸了。

    希望对你有帮助。

    编辑,澄清:

    MySQL bind-address 不是安全约束。如果您想允许某些地址连接到服务器,您应该使用指定的地址创建/授予用户,像这样

    CREATE USER 'bobdole'@'192.168.10.221';
    

    【讨论】:

    • 我需要将我的 VPS 上的 Django 连接到另一台服务器上的数据库。据我所知,更改我的 VPS 上的 mysql 设置无济于事,而且我没有 root 权限来更改另一台服务器上的设置(我也不想损害其安全性。)
    • 我编辑了答案以解决您的安全问题。现在,让我帮你解决你的问题。你现在设置的地址是什么? cat /etc/mysql/my.cnf | grep bind
    • 对,我做到了:CREATE USER 'user'@'(VPS IP address)'GRANT ALL ON mydb.* to 'user'@'(VPS IP address)' IDENTIFIED BY 'password'。但就像我上面所说的,当我尝试从我的 VPS 连接到另一台服务器时,我得到了ERROR 2003 (HY000)
    • VPS IP address 是安装 Django 的 VPS 的地址,对吧?我想知道它是否使用某种私有 IP 连接到 VPS。你能检查一下你的支持吗?
    • 请确保bind-address0.0.0.0
    【解决方案2】:

    相当 hacky,但我认为 MySQL Proxy 监听公共 IP 上的非特权端口,将所有查询代理到本地运行的 mysqld,这应该是可能的。

    【讨论】:

      猜你喜欢
      • 2017-02-11
      • 2013-03-17
      • 2017-04-21
      • 2015-01-08
      • 2012-12-13
      • 1970-01-01
      • 2020-09-11
      • 2016-07-31
      • 1970-01-01
      相关资源
      最近更新 更多