在EC2实例中远程Mysql

我在Amazon EC2中有一个MySql服务器实例。 在my.cnf

如果我写入bind-address = 127.0.0.1 ,服务器可以启动。

但是,如果我写bind-address = SERVER_IP ,它会给出绑定错误。

所以要远程连接这个服务器(因为我想在我的本地工作区使用它进行开发),我该怎么做?

你可以绑定到地址0.0.0.0。 这使得MySQL可以监听每个IP。

请记住,您可能需要授予使用您的IP连接从喜欢

 GRANT USAGE ON databse.table TO 'username'@'host'; 

就像一个小小的注释:如果您只想在云中安装MySQL数据库,您可以使用Amazon Relational Database Service

我将猜测SERVER_IP是您的实例的公共(弹性)IP。 这是行不通的,因为从机器的angular度来看,你只能得到10/8的地址,而私人IP地址被亚马逊的networking转换成你所知道和喜爱的公共IP地址。

你必须设置bind-address = 10.xyz (或者像Christopher Perrin所说的0.0.0.0 )来使其工作。 请记住,一个向世界开放的数据库服务器是一个美好的机会目标。

你应该做的是通过OpenVPN或者类似的方式在你和数据库实例之间build立一个安全的链接。 OpenVPN可能是矫枉过正,但它是最好的。 这样,你可以绑定到它的tun0接口,而不必担心唠叨像被黑客一样的小事情。

只需将您的当前IP添加到您的服务器正在使用的安全组。

  1. 得到http://ping.eu
  2. 复制您的IP地址,并将其添加到安全组(通常是默认的)。 像这样的东西:xxx.xxx.xxx.xxx/32