我已经在Spring中构建了REST API,可以将其部署为公司网站的后端。它利用mySQL RDS实例存储数据。我将把它托管在AWS上,并且目前正在学习如何做。我使用Spring的jdbc模板连接到数据库,并进行SQL查询以创建和编辑表。
我已经读过的任何教程都没有解决我的一个大问题:一旦一切都在AWS上启动并运行,我将无法再直接访问数据库,因为它只能访问从我的REST API后面进行必要的查询。 REST API仅可由前端服务器(也在AWS上)访问。但是我经常需要读取不同格式的自定义数据。
当前,这样做非常容易,因为我可以读取随机的excel文件并直接调用在服务器启动时实际进行SQL查询的方法。但这是因为我的测试RDS数据库是可公开访问的。而且我很确定这是可怕的做法。
那么我该如何在AWS上进行设置,以便仍然可以从笔记本电脑连接到数据库,并对数据库进行自定义SQL查询?
我正在按照本教程(https://keyholesoftware.com/2017/09/26/using-docker-aws-to-build-deploy-and-scale-your-application/)来启动和运行我的REST服务,并且必须分别设置RDS实例。
答案 0 :(得分:0)
我所知道的最好的选择是将SSH插入EC2,然后连接到RDS。如果您使用的是Mac,则Sequel Pro可以轻松实现这一点,因为您可以提供SSH设置以及MySQL连接设置。
这也可以通过SSH端口转发来完成,然后您可以使用本地SQL客户端。这是指向似乎具有正确信息MySQL SSH Tunnel
的文章的链接只有其他安全选项允许来自IP的RDS连接。我无法验证它是否仍然有效,但是我的记忆是我曾经以这种方式运行以前的公司RDS。