如何将私有EC2实例中的MySQL数据库远程连接到localhost中的Visual Studio

如何将私有EC2实例中的MySQL数据库远程连接到localhost中的Visual Studio,mysql,amazon-web-services,amazon-ec2,Mysql,Amazon Web Services,Amazon Ec2,我已经创建了2个EC2实例,一个是public,它有公共IP和私有IP,另一个是private,它只有私有IP。只有公共实例才能访问私有实例,私有实例包含MYSQL数据库。公共实例包含我从本地pc发布的Web服务器。我想知道如何访问ASP.net项目的私有实例中的数据库,以便建立SQL连接您可以在公共可访问的实例上运行端口重定向器软件,将流量重定向到私有实例,然后打开公共实例的防火墙,只接受从IP到端口重定向器端口的流量 或者,在私有实例上使用类似ngrok的东西,通过它们的代理来引导流量,并使

我已经创建了2个EC2实例,一个是public,它有公共IP和私有IP,另一个是private,它只有私有IP。只有公共实例才能访问私有实例,私有实例包含MYSQL数据库。公共实例包含我从本地pc发布的Web服务器。我想知道如何访问ASP.net项目的私有实例中的数据库,以便建立SQL连接

您可以在公共可访问的实例上运行端口重定向器软件,将流量重定向到私有实例,然后打开公共实例的防火墙,只接受从IP到端口重定向器端口的流量

或者,在私有实例上使用类似ngrok的东西,通过它们的代理来引导流量,并使其看起来像MySQL在您的机器上运行一样

或者在公共实例上安装MySQL studio软件并通过RDP访问


但是,尽管有这么多麻烦,我还是给私有实例一个公共ip地址,将其锁定为仅可由您的ip访问,并直接使用它。

从本地工作站访问私有实例、rds或VPC中的任何其他资源的常用方法是通过ssh隧道

因此,基本上,您将建立到公共实例的ssh隧道,该实例将使用mysql转发到私有实例的连接。有了隧道,您可以在本地工作站上使用
localhost
访问数据库

有很多关于如何做的教程。例如:


不,我没有使用AWS RDS。我已经私下安装了MYSQL服务器instance@VishwajeetGade无论它是否是RDS、ElasticSearch或其他什么。使用ssh隧道的过程是相同的。您可以使用ssh隧道通过公共堡垒主机访问vpc私有子网中的任何资源。@VishwajeetGade情况如何?你联系上了吗?谢谢你的帮助@Marcin。是的,我确实使用SSH隧道进行了连接,但并没有完全按照您所说的方式进行连接。我已经在公共EC2实例中部署了我的项目,并在代码中做了一些更改。再次感谢您的帮助,并对迟来的回复表示歉意。我很忙assignment@VishwajeetGade没问题。很高兴它成功了:-)